如何以添加新记录的方式显示表中的行数,表示该行的数字越高,删除记录时,数字会相应更新?
为了更清楚,假设我有一个这样的简单表:
为了更清楚,假设我有一个这样的简单表:
ID int (primary key) Name varchar(5)
ID被设置为自己递增(使用身份规范),因此它不能表示行(记录)的数量,因为如果我有例如3条记录:
3 Sara 4 Mina
所以基本上我正在寻找一个用于执行此操作的sql端解决方案,以便我不会在多个位置更改源代码中的任何其他内容.
我试着写一些东西来完成工作,但它很糟糕.这里是 :
SELECT COUNT(*) AS [row number],Name FROM dbo.Test GROUP BY ID,Name HAVING (ID = ID)
这显示为:
row number Name 1 Alex 1 Scott 1 Sara
虽然我希望它显示为:
row number Name 1 Alex 2 Scott 3 Sara
解决方法
如果您只是想在选择数据时而不是在数据库中对行进行编号,那么您可以使用它
select row_number() over(order by id) from dbo.Test
这将给出第n行的行号n.
原文地址:https://www.jb51.cc/mssql/75481.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。