,我有以下表中調用的MySQL數據庫tbl_test:刪除用戶如果沒有其他用戶具有相似特徵存在
+------+------------+------------+
| name | fav_color | dob |
+======+============+============+
| jane | blue | 1996-07-07 |
+------+------------+------------+
| jane | pink | 1996-07-07 |
+------+------------+------------+
| jane | pink | 2016-07-07 |
+------+------------+------------+
| joe | pink | 2001-07-07 |
+------+------------+------------+
| john | red | 1997-07-07 |
+------+------------+------------+
在英語中,這是我想要完成的任務:
刪除所有使用dob < 2001-01-01的用戶,但保留一個用戶,如果存在具有相同名稱AND fav_color其dob> = 2001-01-01的其他用戶。
所以在這個例子中,最喜歡的顏色是藍色和約翰的jane將被刪除。
到目前爲止,我已經試過:
DELETE FROM tbl_test
WHERE dob < '2000-01-01' AND name, fav_color NOT IN
(SELECT T.name, T.fav_color FROM
(SELECT name, fav_color FROM tbl_test WHERE dob >= '2000-01-01') T);
但是,當我輸入這個命令的MySQL拋出一個語法錯誤。有關如何實現此目的的任何提示?