MySQLでINSERT、VALUES、およびSELECTを組み合わせる
以下の構文を使用して、挿入、値、およびselectステートメントを組み合わせることができます
insert into yourFirstTableName(yourColumnName1,yourColumnName2,.......N) select yourColumnName1,yourColumnName2,.......N from yourSecondTableName where yourCondition;
上記の構文を理解するために、最初のテーブルが2番目のテーブルからレコードを取得する2つのテーブルを作成しましょう。
レコードなしで最初のテーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです
mysql> create table CombiningInsertValuesSelect -> ( -> EmployeeId varchar(10), -> EmployeeName varchar(100), -> EmployeeAge int -> ); Query OK, 0 rows affected (6.95 sec)
これで、いくつかのレコードを使用して2番目のテーブルを作成できます。テーブルを作成するためのクエリは次のとおりです
mysql> create table getAllValues -> ( -> Id varchar(100), -> Name varchar(100), -> Age int -> ); Query OK, 0 rows affected (1.12 sec)
挿入コマンドを使用して、「getAllValues」という名前のレコードを2番目のテーブルに挿入します。クエリは次のとおりです
mysql> insert into getAllValues values('EMP-1','John',26); Query OK, 1 row affected (0.86 sec) mysql> insert into getAllValues values('EMP-2','Carol',22); Query OK, 1 row affected (0.36 sec) mysql> insert into getAllValues values('EMP-3','Sam',24); Query OK, 1 row affected (0.28 sec) mysql> insert into getAllValues values('EMP-4','David',27); Query OK, 1 row affected (0.25 sec) mysql> insert into getAllValues values('EMP-5','Bob',21); Query OK, 1 row affected (0.75 sec)
これで、selectステートメントを使用してテーブルのすべてのレコードを表示できます。クエリは次のとおりです
mysql> select *from getAllValues;
以下は出力です
+-------+-------+------+ | Id | Name | Age | +-------+-------+------+ | EMP-1 | John | 26 | | EMP-2 | Carol | 22 | | EMP-3 | Sam | 24 | | EMP-4 | David | 27 | | EMP-5 | Bob | 21 | +-------+-------+------+ 5 rows in set (0.00 sec)
MySQLでの挿入、値、および選択の使用法は次のとおりです。クエリは次のとおりです
mysql> insert into CombiningInsertValuesSelect(EmployeeId,EmployeeName,EmployeeAge) -> select Id,Name,Age from getAllValues where Id='EMP-4'; Query OK, 1 row affected (0.23 sec) Records: 1 Duplicates: 0 Warnings: 0
次に、レコードがテーブルに存在するか、selectステートメントを使用していないかを確認します。クエリは次のとおりです
mysql> select *from CombiningInsertValuesSelect;
以下は出力です
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | EMP-4 | David | 27 | +------------+--------------+-------------+ 1 row in set (0.00 sec)
-
MySQLテーブルで先行ゼロの値を選択して挿入します
このために、LPAD()とともにINSERTINTOSELECTステートメントを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1967 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, UserId varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql>
-
SELECTとSHOWコマンドの結果をMySQLに結合しますか?
SELECTコマンドとSHOWコマンドの結果を1つにまとめるには、次のクエリを使用します- select @anyVariableName1 as anyAliasName1,@anyVariableName1 as anyAliasName2,......N; SELECTとSHOWを組み合わせるには、最初に最初の変数を作成して初期化します。以下はクエリです- mysql> set @first_name='John'; Query OK, 0 rows affected (0.00 sec) SELECTとSHOWを組み合わせるには、2番目の変数を作成して初期化し