我在使用 MySQL 查询时遇到了一些问题。我在一个名为“ID”的表中有一个字段,我想要一个删除该表中所有行的查询,除非它们具有某个 ID,我希望更多能够在查询中定义多个 ID。
有任何想法吗?
DELETE FROM your_table
WHERE id NOT IN (1,2,3)
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, 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)
of (1,2,3,4,5...) 是您要保存的 id 列表。
你也可以在一些额外的条件下使用它:
delete from your_table_name where id not in (select id from your_table_name where necessary=false)