2

晚上好,我目前正在学习ROW_NUMBER()in squirrel sql。我成功从数据库中检索数据,但问题是 R 中的 RROW_NUMBER() OVER () AS R与排序后的数据库数据不匹配。需要一些关于以下查询的建议和提示,谢谢

询问

SELECT COUNT(*) AS RECORDS  FROM (SELECT ROW_NUMBER() OVER () AS R,
somethingAisID, somethingB, somethingC ORDER BY somethingA ) AS T WHERE R>=0
AND R<=100

p/s:数据库行已排序,但 R 字段与未排序的数据库行匹配。

例子:

somethingAisID查询中排序的是 1,2,3,4,5

somethingAisID原始数据库表中未排序的是 4,5,2,3,1

然后 R 匹配为 4,5,2,3,1

如何查询 R 以匹配为 1、2、3、4、5?(排序查询)

4

1 回答 1

2

您必须为此使用ORDER BYinOVER子句

ROW_NUMBER() OVER (ORDER BY column_name [ASC|DESC]) AS R

这是SQLFiddle演示

于 2013-09-10T09:42:16.943 回答