Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL删除查询_Mysql_Sql - Fatal编程技术网

MySQL删除查询

MySQL删除查询,mysql,sql,Mysql,Sql,我在使用MySQL查询时遇到了一些问题。我在一个名为ID的表中有一个字段,我想要一个删除该表中所有行的查询,除非它们具有特定的ID,我想要更多,以便能够在查询中定义多个ID 有什么想法吗?您应该尝试以下查询: DELETE FROM your_table WHERE id NOT IN (1,2,3) DELETE FROM tablename WHERE ID NOT IN ('1','2','3'); 您应该尝试以下查询: DELETE FROM tablename WHERE ID N

我在使用MySQL查询时遇到了一些问题。我在一个名为ID的表中有一个字段,我想要一个删除该表中所有行的查询,除非它们具有特定的ID,我想要更多,以便能够在查询中定义多个ID


有什么想法吗?

您应该尝试以下查询:

DELETE FROM your_table
WHERE id NOT IN (1,2,3)
DELETE FROM tablename WHERE ID NOT IN ('1','2','3');

您应该尝试以下查询:

DELETE FROM tablename WHERE ID NOT IN ('1','2','3');
或者,如果您不想列出您的ID,您可以使用子查询,该子查询将包含要保留的ID列表:

DELETE
FROM yourTable
WHERE yourID NOT IN (SELECT * FROM yourTable WHERE ...)
或者,如果您不想列出您的ID,您可以使用子查询,该子查询将包含要保留的ID列表:

DELETE
FROM yourTable
WHERE yourID NOT IN (SELECT * FROM yourTable WHERE ...)
这应该可以完成任务

delete from TABLE_NAME where id not in (1,2,3,4,5,6)
1,2,3,4,5的。。。是要保存的id列表。

这应该可以完成此任务

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)

您还可以在某些附加条件下使用此选项:

    delete from your_table_name where id not in (select id from your_table_name where necessary=false)