簡體   English   中英

根據字段1中的唯一值在SQL表中多次插入同一行

[英]Insert same row multiple times within SQL table based on unique value in field 1

我目前有一個表,其中第1列是其余列的唯一標識符,我需要為每個唯一標識符在表中插入一個新值。 示例如下:

Column 1   Column 2   Column 3 
10         Address    True 
10         City       False
10         State      True
20         Address    True
20         City       True
20         State      True

我需要根據第1列中的每個唯一標識符插入新行,如下所示:

Column 1   Column 2   Column 3
10         Address    True
10         City       False
10         State      True
*10         NEW        NEW*
20         Address    True
20         City       True
20         State      True
*20         NEW        NEW*

由於某種原因,用於快速查找和插入的SQL腳本只是在星期一的一個星期一逃離我。 任何幫助,將不勝感激。

謝謝!

insert into table-name
(Column1, Column2, Column3)
select Column1, 'NEW', 'NEW*' from table-name group by Column1

您也可以在子選擇中使用非重復,但是我已經開始切換為分組依據,如果我想更改查詢以進行計數或其他操作,可以更加靈活。

您可以嘗試Marlin Pierce的以下建議:

INSERT INTO [table-name]
([Column 1], [Column 2], [Column 3])
SELECT [Column 1], 'NEW', 'NEW*' from [table-name] where [Column 2] = 'Address' group by [Column 1];

這將為您的每個現有行創建一個新行。

有關可執行示例,請參見SqlFiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM