我遇到了一个有点特殊的语法,你能帮我找出它的含义吗?谢谢。
SELECT ROW NUMBER() OVER (ORDER BY Product.ProductID) FROM Product;
此外,这也失败了。
我对ROW NUMBER() OVER
位特别感兴趣。这是我第一次遇到OVER关键字。
如果您需要完整的示例,请告诉我。为了清楚起见,我稍微缩短了一点。
答案 0 :(得分:9)
ROW_NUMBER()函数需要OVER(ORDER BY)表达式来确定行的编号顺序。默认顺序为升序,但也可以使用降序。由于T-SQL不允许在T-SQL之外检索游标,因此该函数对于在迭代一组记录时跟踪行等各种事情非常有用。 @tunimise fasipe是正确的,你错过了_
答案 1 :(得分:6)
请注意,您在ROW_NUMBER
中缺少下划线SELECT ROW_NUMBER() OVER (ORDER BY Products.ProductID) FROM Products;
它的作用是按照检索顺序打印出产品表中每条记录的行号(按ProductID排序)
e.g.
RowNumber ProductName
------------------------
1 Flower
2 Bag
3 Car
... ...
为了清晰起见,我添加了ProductName列