我在MySQL查询时遇到了一些麻烦。我在一个名为“ID”的表中有一个字段,我想要一个查询删除该表中的所有行,除非他们有一个特定的ID,我希望更多的能够在查询中定义多个ID。MySQL删除查询
任何想法?
我在MySQL查询时遇到了一些麻烦。我在一个名为“ID”的表中有一个字段,我想要一个查询删除该表中的所有行,除非他们有一个特定的ID,我希望更多的能够在查询中定义多个ID。MySQL删除查询
任何想法?
DELETE
FROM yourTable
WHERE yourID NOT IN (1,2,3,4) -- place your list here
你不想列出您的ID或,你可以使用将包含ID列表的子查询你想保留:
DELETE
FROM yourTable
WHERE yourID NOT IN (SELECT * FROM yourTable WHERE ...)
DELETE FROM your_table
WHERE id NOT IN (1,2,3)
delete from your_table where id not in (1, 2, 4)
你应该尝试此查询:
DELETE FROM tablename WHERE ID NOT IN ('1','2','3');
这应该做的工作
delete from TABLE_NAME where id not in (1,2,3,4,5,6)
(1,2,3,4,5 ...)是您要保存的ID的列表。
您还可以使用一些额外的条件使用:
delete from your_table_name where id not in (select id from your_table_name where necessary=false)