gpt4 book ai didi

SQL如何在表中间插入新行

转载 作者:行者123 更新时间:2023-12-02 04:42:42 25 4
gpt4 key购买 nike

这是我的问题:

我想在我的表中插入一个新行,但其中已经有一些寄存器。如果我需要将这个新行与已经注册的行放在同一行,我应该怎么做?

例如:

我有这张表,其中有几行:

ID|Value
1 |Sample1
2 |Sample2
3 |Sample3

但现在我想在 Sample2 所在的位置插入一个新行,所以表格应该是这样的:

ID|Value
1 |Sample1
2 |NewSample
3 |Sample2
4 |Sample3

有什么想法吗?

最佳答案

Any thoughts?

是的。如果您在某处有引用,请忘记更改主键(ID)。

而是添加一个列(例如 ViewOrder),它会明确地为您处理此问题:

ID|Value     | ViewOrder
1 |Sample1 |1
5 |NewSample |2
2 |Sample2 |3
3 |Sample3 |4

要选择的查询:

SELECT ID, Value, ViewOrder FROM yourTable ORDER BY ViewORDER

Insert/Update 看起来像这样(当然,YourRowIndex 是您希望插入新行的索引):

UPDATE dbo.table SET VIEWORDER = VIEWORDER + 1 WHERE VIEWORDER >= @YourRowIndex ;
SET IDENTITY_INSERT dbo.table ON
INSERT dbo.table (Value, ViewOrder) VALUES (@YourValue, @YourRowIndex);

关于SQL如何在表中间插入新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20475554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com