我有字段Serial_No,只计算我用过的学生的序列号
身份(1,1)
但问题是,如果我删除行/行,它不会减少Serial_No像
Serial_No名称标记
1 Ehsan 50
3 Nouman 40
9 ejaz 56
10 ali 30
11 saleem 78
15 abdullah 90
.... ..... ....
...... .. .....
我需要Serial_No自动增量,但在删除和插入行
后也需要更新如1,2,3,4,5,6,7,8,9,10,11,..........
答案 0 :(得分:0)
SQL Server在这里回答,因为两者都在帖子中标记。我会说要单独留下你的身份栏。让它执行它的设计方式。而是创建一个选择所有列的视图,还包括一个窗口函数(row_number)来生成您正在寻找的顺序列表。
CREATE VIEW view_YourTable AS (
select *
, ROW_NUMBER() OVER(order by serial_no) AS sequential_id
FROM your_table);
SELECT *
FROM view_YourTable