MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

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)

  1. 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

  2. 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