sqlserver2008提示我列名无效

select*,ROW_NUMBER()OVER(orderByitem_id)asRowfromT_ITEMSwhereRow>2消息207,级别16,状态1,第2行列... select *,ROW_NUMBER()OVER(order By item_id) as Row from T_ITEMS where Row > 2

消息 207,级别 16,状态 1,第 2 行
列名 'Row' 无效。
这是为什么
展开
 我来答
藜照堂_刘
2012-12-02 · TA获得超过5701个赞
知道小有建树答主
回答量:2034
采纳率:56%
帮助的人:355万
展开全部
不能这么写,改一下
select * from (select *,ROW_NUMBER()OVER(order By item_id) as Row from T_ITEMS) as aaa where Row > 2
这样就行了
更多追问追答
追问
可以了,但是能问问为什么吗
追答
你那样写,相当于直接从表T_ITEMS 里面那字段Row 来用,而T_ITEMS 是没有Row ,这样说你明白吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式