我不认为代码在这里是必要的,但如果您不喜欢,请告诉我。
我必须删除其中一个表格中的整个条目。这些条目由整数值组织,该整数值随间隔增加。有没有办法可以编写查询,以便特定列中的所有值都以-1值更新?
例如,假设我有这张表
| Red | 1 |
| Orange | 2 |
| Yellow | 3 |
| Green | 4 |
| Cyan | 6 |
| Blue | 7 |
| Purple | 8 |
| Violet | 9 |
我可以编写一个查询,以便将青色 - 紫色的数字减一,而不是对每个条目进行唯一更新吗?
| Red | 1 |
| Orange | 2 |
| Yellow | 3 |
| Green | 4 |
| Cyan | 5 |
| Blue | 6 |
| Purple | 7 |
| Violet | 8 |
答案 0 :(得分:1)
使用Cte
更新,Row_number()
生成序号
; WITH cte
AS (SELECT ( Row_number()OVER( ORDER BY id) )rn,*
FROM yourtable)
UPDATE cte
SET id = rn