|
分類:[データベース全般]
SQLServer を使用しています。 以下はテストサンプルになります。
DECLARE @PERSON1 TABLE ( PERSON_ID INT NOT NULL PRIMARY KEY, PERSON_NAME NVARCHAR(20) NOT NULL, GENDER TINYINT NOT NULL ) DECLARE @PERSON2 TABLE ( PERSON_ID INT NOT NULL PRIMARY KEY, PERSON_NAME NVARCHAR(20) NOT NULL, GENDER TINYINT NOT NULL )
INSERT INTO @PERSON1 (PERSON_ID, PERSON_NAME, GENDER) VALUES (101, 'Henry', 1), (102, 'Nancy', 2), (103, 'James', 1);
INSERT INTO @PERSON2 (PERSON_ID, PERSON_NAME, GENDER) VALUES (101, 'Aoyama', 1), (201, 'Bando', 1), (302, 'Daimon', 2);
複数のデータを インサートとアップデートを1行(同時)に処理 できるSQLを教えてください ネットでは @@ROWCOUNT や MERGE を使うようなのですが 複数データの場合がわかりません。
@PERSON1 のテーブルに
以下のデータ SELECT * FROM @PERSON2 WHERE GENDER = 1
を追加、編集するにはどうすればよいのでしょうか?
結果は以下のようになると思います。
(101, 'Aoyama', 1) (102, 'Nancy', 2) (103, 'James', 1) (201, 'Bando', 1)
|