在 teradata 中按升序分页

pagination in teradata in ascending order

我正在尝试在 teradata 中对 sql 查询进行分页。目前我有如下查询:

 SELECT RANK(name) as rank_,id,name,address FROM tbl_users ORDER BY name
 QUALIFY rank_ BETWEEN 1 and 5

我想实现对 'name' 列的升序分页,但此查询获取结果集的最后五行。 例如,如果 'name' 列的值类似于 'a'、'b'、'c'、'd'、'e'......'v','w','x','y','z'

我期望值的顺序是 'a'、'b'、'c'、'd'、'e',但我得到的是 'v' ,'w','x','y','z'。 我该如何解决这个问题?

RANK(col) 是一个旧的 Teradata 函数,已弃用超过 15 年。它默认为降序排序,因此 RANK(name ASC) 将 return 预期结果。

但推荐语法使用标准 SQL:

RANK() OVER (ORDER BY name)