我想使用ROW_NUMBER()
要得到...
- 为了得到
max(ROW_NUMBER())
--> 或者我猜这也是所有行的计数
我尝试这样做:
SELECT max(ROW_NUMBER() OVER(ORDER BY UserId)) FROM Users
但它似乎不起作用......
- To get
ROW_NUMBER()
使用给定的信息,即。如果我有一个名字并且我想知道这个名字来自哪一行。
我认为它会类似于我尝试的#1
SELECT ROW_NUMBER() OVER(ORDER BY UserId) From Users WHERE UserName='Joe'
但这也不起作用......
有任何想法吗?
对于第一个问题,为什么不直接使用呢?
SELECT COUNT(*) FROM myTable
得到计数。
对于第二个问题,行的主键是用来标识特定行的。不要尝试为此使用行号。
如果您在主查询中返回 Row_Number(),
SELECT ROW_NUMBER() OVER (Order by Id) AS RowNumber, Field1, Field2, Field3
FROM User
然后,当您想要返回 5 行时,您可以获取当前行号并使用以下查询来确定 currentrow -5 的行
SELECT us.Id
FROM (SELECT ROW_NUMBER() OVER (ORDER BY id) AS Row, Id
FROM User ) us
WHERE Row = CurrentRow - 5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)