我试图删除特定列不包含某些字符串的所有行。 像这样:
DELETE * FROM table
WHERE Disease NOT LIKE (Malaria, HIV, E. coli O157);
我收到此错误: #1064 - 您的SQL语法出错;靠近' *来自表格疾病不喜欢(疟疾'第1行
答案 0 :(得分:1)
使用
DELETE FROM TABLE_NAME WHERE Disease not in ('Malaria', 'HIV', 'E. coli 0157');
在上述声明中将表的实际名称替换为TABLE_NAME。
答案 1 :(得分:0)
如果给出的描述是疾病的确切描述,只需使用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 NOT LIKE '%HIV%'
or Disease NOT LIKE '%E. coli O157%');