MySQLで1つのテーブルから別のテーブルに行を移動しますか?
INSERT INTO SELECTステートメントを使用して、あるテーブルから別のテーブルに行を移動できます。
構文は次のとおりです-
insert into yourDestinationTableName select *from yourOriginalTable where someCondition
上記の構文を理解するため。テーブルを作成しましょう。以下は、テーブルを作成するためのクエリです-
mysql> create table StudentTable −> ( −> Id int, −> Name varchar(100) −> ); Query OK, 0 rows affected (0.65 sec)
次に、2番目のテーブルを作成します。クエリは次のとおりです-
mysql> create table Employee −> ( −> EmployeeId int −> , −> EmployeeName varchar(100) −> ); Query OK, 0 rows affected (0.54 sec)
テーブルEmployeeにいくつかのレコードを挿入します。レコードを挿入するためのクエリは次のとおりです-
mysql> insert into Employee values(1,'Carol'); Query OK, 1 row affected (0.18 sec) mysql> insert into Employee values(2,'John'); Query OK, 1 row affected (0.16 sec) mysql> insert into Employee values(3,'Johnson'); Query OK, 1 row affected (0.11 sec)
これで、SELECTステートメントを使用して、Employeeテーブルのすべてのレコードを表示できます。クエリは次のとおりです。
mysql> select *from Employee;
以下は出力です-
+------------+--------------+ | EmployeeId | EmployeeName | +------------+--------------+ | 1 | Carol | | 2 | John | | 3 | Johnson | +------------+--------------+ 3 rows in set (0.00 sec)
最初に説明した構文を実装して、別のテーブルの行を移動します。次のクエリは、行をEmployeeテーブルからStudentTableに移動します-
mysql> insert into StudentTable select *from Employee where EmployeeId = 3 and EmployeeName = 'Johnson'; Query OK, 1 row affected (0.17 sec) Records: 1 Duplicates: 0 Warnings: 0
これで、行が2番目のテーブル「StudentTable」に存在するかどうかを確認できます。クエリは次のとおりです-
mysql> select *from StudentTable;
以下は出力です-
+------+---------+ | Id | Name | +------+---------+ | 3 | Johnson | +------+---------+ 1 row in set (0.00 sec)
上記のサンプル出力を見てください。行をあるテーブルから別のテーブルに移動しました。すべての行を移動するには、「where」条件を削除する必要があります。クエリは次のとおりです-
mysql> insert into StudentTable select *from Employee; Query OK, 3 rows affected (0.15 sec) Records: 3 Duplicates: 0 Warnings: 0
クエリは、StudentTableに更新されたすべてのレコードを表示します-
mysql> select *from StudentTable;
以下は出力です-
+------+---------+ | Id | Name | +------+---------+ | 1 | Carol | | 2 | John | | 3 | Johnson | +------+---------+ 3 rows in set (0.00 sec)
-
別のテーブルの値を使用したINSERTINTOのMySQLクエリ?
これには、INSERTINTOSELECTステートメントを使用します。 テーブルを作成しましょう- 例 mysql> create table demo82 -> ( -> id int, -> name varchar(20) -> ); Query OK, 0 rows affected (2.06 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 例 mysql> insert into demo82 values(100,&
-
MySQLのあるテーブルから別のテーブルにデータを挿入しますか?
あるテーブルから別のテーブルにデータを挿入するには、INSERTINTOSELECTステートメントを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1 -> ( -> Id int, -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.49 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> i