使用 NOT IN 根據未刪除的記錄來刪除 MySQL 表中的記錄


我們先建立一個表 -

mysql> create table DemoTable
(
   FirstName varchar(100)
);
Query OK, 0 rows affected (0.65 sec)

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

mysql> insert into DemoTable values('Chris');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values('Robert');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Mike');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Sam');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('David');
Query OK, 1 row affected (0.12 sec)

使用 select 語句顯示錶中的所有記錄 -

mysql> select *from DemoTable;

將會生成以下輸出 -

+-----------+
| FirstName |
+-----------+
| Chris     |
| Robert    |
| Mike      |
| Sam       |
| David     |
+-----------+
5 rows in set (0.00 sec)

以下是使用 NOT IN 根據未刪除的記錄刪除 MySQL 表中記錄的查詢 -

mysql> delete from DemoTable where FirstName NOT IN('Robert', 'Mike');
Query OK, 3 rows affected (0.17 sec)

讓我們再次檢查表記錄 -

mysql> select *from DemoTable;

將會生成以下輸出 -

+-----------+
| FirstName |
+-----------+
| Robert    |
| Mike      |
+-----------+
2 rows in set (0.00 sec)

更新於: 26-9 月-2019

137 次瀏覽

開啟您的 職業 生涯

透過完成課程獲取認證

開始
廣告
© . All rights reserved.