[英]MySQL - How to delete rows where column does not contain certain values?
我正在嘗試刪除特定列不包含某些字符串的所有行。 像這樣:
DELETE * FROM table
WHERE Disease NOT LIKE (Malaria, HIV, E. coli O157);
我收到此錯誤: #1064 - 您的 SQL 語法有錯誤; 在第 1 行的“* FROM table WHERE Disease NOT LIKE (Malaria”附近)
如果給出的描述是對疾病的准確描述,只需使用NOT IN
(帶有適當的引號):
DELETE FROM table
WHERE Disease NOT IN ('Malaria', 'HIV', 'E. coli O157');
但如果它是一個子字符串,你必須使用多個LIKE
:
DELETE FROM table
WHERE
NOT (Disease LIKE '%Malaria%'
or Disease LIKE '%HIV%'
or Disease LIKE '%E. coli O157%');
利用
DELETE FROM TABLE_NAME WHERE Disease not in ('Malaria', 'HIV', 'E. coli 0157');
在上面的語句中用你的實際表名代替 TABLE_NAME。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.