以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  SQLLoad的排序问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=116268)

--  作者:goldenfont
--  发布时间:2018/3/22 0:48:00
--  SQLLoad的排序问题
跟着教程上的SQLLoad的用法来做测试,结果发现一个问题,不知道该怎么解决,老师请指点一下。
Selec t * F rom (Selec t Row_Number() Over(Order by [_Identify] DESC) As RowNum, * from 订单) As a Where RowNum >= 1 And RowNum <= 50
跟着这个sql语句来分页排序,在SQL里建查询结果是对的,就是_Identify是倒序排列的,然后分配的RowNumber是1-50的行号,正序排的,但是到表里怎么就显示不对了,变成了第一页rownumber从50排到1,第二页从100排到51,第三页从150排到101......,变成这个样子了,这是怎么回事呢?

--  作者:有点甜
--  发布时间:2018/3/22 9:32:00
--  

默认是按照_Sortkey列或者_Identify列排序的,你试试改成这样

 

Select [_Identify], rownum as [_Sortkey], 编号, 数量  From (Selec t Row_Number() Over(Order by [_Identify] DESC) As RowNum, * from 订单) As a Where RowNum >= 1 And RowNum <= 50