如何找出兩張 MySQL 表格之間的缺失值?


若要查詢兩張 MySQL 表格之間的缺失值,請使用 NOT IN。讓我們首先建立一個表格 -

mysql> create table DemoTable1(Value int);
Query OK, 0 rows affected (0.56 sec)

使用插入命令在表格中插入一些記錄 -

mysql> insert into DemoTable1 values(1);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable1 values(2);
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable1 values(5);
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1 values(6);
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1 values(8);
Query OK, 1 row affected (0.16 sec)

使用選擇語句在表格中顯示所有記錄 -

mysql> select *from DemoTable1;

這將生成以下輸出 -

+-------+
| Value |
+-------+
|     1 |
|     2 |
|     5 |
|     6 |
|     8 |
+-------+
5 rows in set (0.00 sec)

以下是建立第二張表格的查詢 -

mysql> create table DemoTable2(Value int);
Query OK, 0 rows affected (1.19 sec)

使用插入命令在表格中插入一些記錄 -

mysql> insert into DemoTable2 values(1);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable2 values(2);
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable2 values(3);
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable2 values(4);
Query OK, 1 row affected (0.12 sec)

使用選擇語句在表格中顯示所有記錄 -

mysql> select *from DemoTable2;

這將生成以下輸出 -

+-------+
| Value |
+-------+
|     1 |
|     2 |
|     3 |
|     4 |
+-------+
4 rows in set (0.00 sec)

以下是查詢兩張 MySQL 表格之間缺失值的查詢 -

mysql> select Value from DemoTable1 where Value not in(select Value from DemoTable2);

這將生成以下輸出 -

+-------+
| Value |
+-------+
|     5 |
|     6 |
|     8 |
+-------+
3 rows in set (0.07 sec)

更新於: 2019-08-26

519 次瀏覽

開啟你的 職業

完成課程獲認證

開始
廣告
© . All rights reserved.