我尝试使用row_number从表中选择某些行.但是,sql会提示错误消息"无效的列名'ROWNUMBERS'".有人可以纠正我吗?
SELECT ROW_NUMBER() OVER (ORDER BY Price ASC) AS ROWNUMBERS, *
FROM Product
WHERE ROWNUMBERS BETWEEN @fromCount AND @toCount
Run Code Online (Sandbox Code Playgroud)
Ker*_*mit 19
WHERE由于正在进行逻辑查询处理,尝试引用子句中的别名列不起作用.在WHERE该前评估SELECT条款.因此,评估ROWNUMBERS时列不存在WHERE.
在此示例中引用列的正确方法是:
SELECT a.*
FROM
(SELECT ROW_NUMBER() OVER (ORDER BY Price ASC) AS ROWNUMBERS, *
FROM Product) a
WHERE a.ROWNUMBERS BETWEEN @fromCount AND @toCount
Run Code Online (Sandbox Code Playgroud)
供您参考,操作顺序为:
FROMWHEREGROUP BYHAVINGSELECTORDER BY| 归档时间: |
|
| 查看次数: |
18775 次 |
| 最近记录: |