MySQLの結果をマージする方法は?
マージするには、単純な結合を使用します。以下は構文です-
select aliasName1.yourColumnName1, aliasName1.yourColumnName2, . . .N aliasName2.yourColumnName1 from yourTableName1 aliasName1 . . . N join yourTableName2 aliasName2 on yourCondition;
テーブルを作成しましょう-
mysql> create table demo8 −> ( −> id int, −> name varchar(20) −> ); Query OK, 0 rows affected (1.77 sec)
挿入コマンド-
を使用して、いくつかのレコードをテーブルに挿入します。mysql> insert into demo8 values(100,'John'); Query OK, 1 row affected (0.09 sec) mysql> insert into demo8 values(101,'Mike'); Query OK, 1 row affected (0.16 sec) mysql> insert into demo8 values(102,'Bob'); Query OK, 1 row affected (0.15 sec)
selectステートメントを使用してテーブルのレコードを表示する-
mysql> select *from demo8;
これにより、次の出力が生成されます-
+------+------+ | id | name | +------+------+ | 100 | John | | 101 | Mike | | 102 | Bob | +------+------+ 3 rows in set (0.00 sec)
以下は、2番目のテーブルを作成するためのクエリです-
mysql> create table demo9 −> ( −> id int, −> age int −> ); Query OK, 0 rows affected (1.90 sec)
挿入コマンド-
を使用して、いくつかのレコードをテーブルに挿入します。mysql> insert into demo9 values(100,27); Query OK, 1 row affected (0.09 sec) mysql> insert into demo9 values(101,24); Query OK, 1 row affected (0.12 sec) mysql> insert into demo9 values(102,28); Query OK, 1 row affected (0.29 sec)
selectステートメントを使用してテーブルのレコードを表示する-
mysql> select *from demo9;
これにより、次の出力が生成されます-
+------+------+ | id | age | +------+------+ | 100 | 27 | | 101 | 24 | | 102 | 28 | +------+------+ 3 rows in set (0.00 sec)
以下は、結果をマージするためのクエリです-
mysql> select tbl1.id,tbl1.name,tbl2.age −> from demo8 tbl1 −> join −> demo9 tbl2 −> on tbl1.id=tbl2.id;
これにより、次の出力が生成されます-
+------+------+------+ | id | name | age | +------+------+------+ | 100 | John | 27 | | 101 | Mike | 24 | | 102 | Bob | 28 | +------+------+------+ 3 rows in set (0.00 sec)
-
IN()を使用してMySQLサブクエリで複数の結果を返すにはどうすればよいですか?
MySQLでは、複数の結果を簡単に返すことができますが、IN()を使用したサブクエリでこれを実現することもできます。まずテーブルを作成しましょう- mysql> create table DemoTable1317 -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(20) -> ); Query OK, 0 rows affected (0.49 sec) 挿入コマンドを使用してテーブルにいくつかのレコードを挿入します mysql> insert into DemoTab
-
MySQLに結果を1行で表示させる方法は?
これには、group_concat()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1507 -> ( -> Name varchar(20), -> PaperSet int -> ); Query OK, 0 rows affected (0.68 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1507