如何合併兩個 MySQL 表?


要合併兩個 MySQL 表,請使用以下語法 −

INSERT IGNORE INTO yourTableName1 select *from yourTableName2;

我們將建立兩個帶有某些記錄的表。然後將開始使用上述語法進行合併過程。

建立第一個表 −

mysql> create table MergeDemo1
   -> (
   -> id int,
   -> primary key(id),
   -> Name varchar(200)
   -> );
Query OK, 0 rows affected (1.00 sec)

向表中插入記錄 −

mysql> insert into MergeDemo1 values(1,'John');
Query OK, 1 row affected (0.21 sec)

在表中顯示記錄

mysql> select *from MergeDemo1;

以下是第一個表的輸出 −

+----+------+
| id | Name |
+----+------+
| 1  | John |
+----+------+
1 row in set (0.00 sec)

現在讓我們建立第二個表 −

mysql> create table MergeDemo2
   -> (
   -> id int,
   -> primary key(id),
   -> Name varchar(200)
   -> );
Query OK, 0 rows affected (0.51 sec)

在第二個表中插入記錄 −

mysql> insert into MergeDemo2 values(2,'David');
Query OK, 1 row affected (0.18 sec)

從第二個表中顯示所有記錄 −

mysql> select *from MergeDemo2;

以下是第二個表的輸出 −

+----+-------+
| id | Name  |
+----+-------+
| 2  | David |
+----+-------+
1 row in set (0.00 sec)

以下是合併兩個表的查詢。

mysql> INSERT IGNORE
-> INTO MergeDemo1 select *from MergeDemo2;
Query OK, 1 row affected (0.19 sec)
Records: 1 Duplicates: 0 Warnings: 0

現在讓我們藉助 select 語句檢查第二個表的資料是否已合併。查詢如下 −

mysql> select *from MergeDemo1;

以下是顯示已合併表的輸出 −

+----+-------+
| id | Name  |
+----+-------+
| 1  | John  |
| 2  | David |
+----+-------+
2 rows in set (0.00 sec)

更新於: 30-Jul-2019

4K+ 瀏覽量

開始您的 職業生涯

完成課程即可獲得認證

開始
廣告
© . All rights reserved.