如何仅从SELECT查询中返回行号?嵌套查询实现求助
解决方法
如果你只是想显示符合UserID = 1条件的每条记录的行号(仅保留行号列),直接修改原查询,去掉多余的modcode字段即可:
SELECT ROW_NUMBER() OVER(ORDER BY UserID) AS rownum FROM UserInfo WHERE UserID = 1;
如果你的需求是找到某个特定modcode对应的行号,可以用嵌套子查询实现:
SELECT rownum FROM ( -- 内层查询先给符合条件的记录生成行号,同时保留modcode用于后续筛选 SELECT ROW_NUMBER() OVER(ORDER BY UserID) AS rownum, modcode FROM UserInfo WHERE UserID = 1 ) AS temp_table -- 将XXX替换成你要定位的目标modcode WHERE modcode = 'XXX';
内层子查询负责给UserID=1的所有记录生成行号,外层查询再根据指定的modcode筛选出对应行的行号。
内容的提问来源于stack exchange,提问作者Prof. Gaming
相关产品推荐
相关产品推荐

