MySQLのinsert into select文の使い方はどうですか。
MySQLのINSERT INTO SELECTステートメントは、あるテーブルのデータを別のテーブルに挿入するために使用されます。
以下はINSERT INTO SELECTステートメントの基本構文です:
INSERT INTO 目标表 (列1, 列2, 列3, ...)
SELECT 列1, 列2, 列3, ...
FROM 源表
例:
テーブル1(employees)とテーブル2(new_employees)があるとします。テーブル1の一部の従業員データをテーブル2に挿入したいと思います。
社員のテーブル構造:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
| 1 | John Doe | 5000 |
| 2 | Jane Doe | 6000 |
| 3 | Bob Smith| 5500 |
+----+----------+--------+
新しい従業員のデータベース構造:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
employeesテーブルのデータをnew_employeesテーブルに挿入するために、次のINSERT INTO SELECTステートメントを使用することができます。
INSERT INTO new_employees (id, name, salary)
SELECT id, name, salary
FROM employees
WHERE salary > 5500
employees表の中でsalaryが5500より大きいレコードをnew_employees表に挿入し、id、name、salaryの列のデータだけを挿入します。
新入社員テーブルは次のようになります:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
| 2 | Jane Doe | 6000 |
+----+----------+--------+
INSERT INTO SELECT文は、必要に応じて挿入する列や行を選択できます。