MySQLの2つのテーブルを条件で連結しますか?
2つのテーブルを連結するには、MySQLのUNIONALL。テーブルを作成しましょう-
mysql> create table DemoTable1 ( Id int, FirstName varchar(20) ); Query OK, 0 rows affected (1.52 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1 values(10,'John'); Query OK, 1 row affected (0.28 sec) mysql> insert into DemoTable1 values(20,'Carol'); Query OK, 1 row affected (0.28 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable1;
出力
+------+-----------+ | Id | FirstName | +------+-----------+ | 10 | John | | 20 | Carol | +------+-----------+ 2 rows in set (0.00 sec)
2番目のテーブルを作成します。
mysql> create table DemoTable2 ( Id int, FirstName varchar(20) ); Query OK, 0 rows affected (1.22 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable2 values(20,'David'); Query OK, 1 row affected (1.28 sec) mysql> insert into DemoTable2 values(40,'Chris'); Query OK, 1 row affected (0.38 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable2;
出力
+------+-----------+ | Id | FirstName | +------+-----------+ | 20 | David | | 40 | Chris | +------+-----------+ 2 rows in set (0.00 sec)
以下は、2つのテーブルを連結するためのクエリです-
mysql> select *from DemoTable1 where Id=20 union all select *from DemoTable2 where Id=20;
出力
+------+-----------+ | Id | FirstName | +------+-----------+ | 20 | Carol | | 20 | David | +------+-----------+ 2 rows in set (0.43 sec)
-
MySQLは、1つのクエリで2つのテーブルを選択して挿入します
これが最初のテーブルを作成するためのクエリです。 mysql> create table DemoTable1 -> ( -> StudentName varchar(20), -> StudentMarks int -> ); Query OK, 0 rows affected (0.67 sec) 上記の概念を理解するために、2番目のテーブルを作成しましょう。 mysql> create table DemoTable2 -
-
MySQLで連結を介して条件付きの行を選択するにはどうすればよいですか?
これには、CONCAT_WS()を使用できます。テーブルを作成しましょう- mysql> create table demo38 −> ( −> user_id int, −> user_first_name varchar(20), −> user_last_name varchar(20), −> user_date_of_birth date −> ); Query OK, 0 rows affected (1.70 sec) 挿入コマンド-を使用して、いくつかのレコードを