teradata中的分页按升序排列

时间:2015-12-16 18:57:29

标签: sql teradata

我正在尝试在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”。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

RANK(col)是旧的Teradata函数,自15年以来被弃用。它默认为降序排序,因此RANK(name ASC)将返回预期结果。

但推荐的语法使用标准SQL:

RANK() OVER (ORDER BY name)