我正在尝试删除特定列不包含某些字符串的所有行。这样:
DELETE * FROM table
WHERE Disease NOT LIKE (Malaria, HIV, E. coli O157);
我得到此错误:#1064-您的SQL语法中有错误;接近'*从疾病不喜欢的桌子(第1行的疟疾'
如果给出的描述是疾病的确切描述,请使用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。