INSERT INTO TABLE (CLM1,CLM2,CLM3 )SELECT CLM1,CLM2,CLM3 FROM TEMPTABLE WHERE CLM1 = CLM4;
カラムの数は合わせる必要がある。
テーブル作成時にInsert
CREATE TEMPORARY TABLE temp_table AS (
SELECT CLM1,CLM2 FROM users
INNER JOIN
mstr ON users.code = mstr.code
WHERE mstr.code = 'mstr'
ORDER BY mstr.mseq -- ソート順を指定
);
番号を順番に振ってアップデート
すでにあるテーブルのデータのとあるカラムに上から順番に番号を振りたいとき
まず順番に番号を振ったテーブルを作る
このとき、アップデートしたいテーブルの何か一意のデータが必要。
CREATE TABLE temp_table (
number decimal,
mseq INTEGER -- mseq列のデータ型に合わせて定義
);
方法はいろいろあるが、numberカラムにidentityをつける。
テーブルを右クリック、IDENTITY設定を「はい」にする。
次に、データをインサートする。
INSERT INTO temp_table (mseq) SELECT seq FROM DATATABLE order by seq
これでnumberには順番に番号が入り、mseqにはデータが入ったので、これをもとにアップデートする
UPDATE DATATABLE SET DATATABLE.seq = temp_table.number FROM temp_table WHERE DATATABLE.seq = temp_table.mseq
これで、順番に数字を付けてアップデートできた。