0

テーブルA(ID(Identity)、col2、col3、col4)

col4 ='(クラスAのすべての個人に新しいレコードを挿入してクラスBに配置する)'の場合、すべてのIDの新しいエントリをテーブルAに追加したいと思います。挿入される新しいレコードは、Col2で追加されるのと同じ値である必要があり、さまざまなエントリにハードコーディングすることはできません。例:

1)1,'Michael', 'Lamboux', 'class A'(initial record)
2)2,'Sarah', 'Johanson', 'class A' (initial record)
3)...
4)...
5)...
6)1024,'Michael','Lamboux','class B'(new value)
7)1025, 'Sarah', Johanson', 'class B'(new value)

これまでSQLでこれを行ったことがないため、方法に困惑しています。どんな助けでもいただければ幸いです。

4

2 に答える 2

0

列 1 が ID フィールドであると仮定します。

insert into tableA (col2, col3, col4) select col2, col3, 'class B' from tableA where col4= 'class A'

于 2013-02-04T12:38:25.497 に答える
0
INSERT INTO [Table A] (col2, col3, col4)
SELECT col2, col3, 'class B' FROM [Table A]
WHERE col4='class A';

レコードごとに新しい行を追加するだけの場合

編集

コメントより

INSERT INTO tblEWF2  (E_ID,Media_ID, Min_Duration, Norm_Duration, CustDuration, Sec_ID, Task_ID, Schedule_Date, Active)
SELECT E_ID, 4845, Min_Duration, 0, CustDuration, Sec_ID, Task_ID, Schedule_Date, 1
FROM tblEWF2 

最後のコメントから2 を編集;)

INSERT INTO EWF2 (E_ID,Media_ID, Min_Duration, Norm_Duration, CustDuration, Sec_ID, Task_ID, Schedule_Date, Active)
SELECT E_ID,'4845',NULL, '0',NULL,'1','73',NULL,'1' 
FROM EWF2
GROUP BY E_ID
于 2013-02-04T12:38:32.620 に答える