0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SQL レコードをコピーする

Last updated at Posted at 2019-12-18

SQLでレコードを追加する際に、似たレコードを複製しそれを編集して完成させる、というやり方をしたかったので俺用メモ。

すること

id が 100 のレコードを、data列 を abcdefg に変更して複製する。

条件

データベース名 テーブル名
myDatabaseName myTableName

SQL文

-- 確認
SELECT * FROM myDatabaseName.myTableName;

-- 一時テーブルに、idが100のレコードをコピー
CREATE TEMPORARY TABLE myDatabaseName.tmp SELECT * from myDatabaseName.myTableName where id=100;

-- テーブルからid列を削除する
ALTER TABLE myDatabaseName.tmp drop id;

-- data列を変更する
SET SQL_SAFE_UPDATES = 0;
UPDATE myDatabaseName.tmp SET data='abcdefg';

-- レコードを挿入する
INSERT INTO myDatabaseName.myTableName SELECT 0,myDatabaseName.tmp.* FROM myDatabaseName.tmp;

-- 一時テーブルを削除
DROP TABLE myDatabaseName.tmp;

-- 確認
SELECT * FROM myDatabaseName.myTableName;

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?