Mysql 将SELECT语句更改为DELETE语句
在我的表中有许多重复的行。我有一个SELECT,它提供了我要删除的数据,但我如何才能做到这一点?无论我做什么,我都会出错Mysql 将SELECT语句更改为DELETE语句,mysql,sql,Mysql,Sql,在我的表中有许多重复的行。我有一个SELECT,它提供了我要删除的数据,但我如何才能做到这一点?无论我做什么,我都会出错 SELECT * FROM tablename t WHERE NOT EXISTS ( SELECT 1 FROM tablename t2 WHERE t2.column = t.column HAVING COUNT(*) = 1
SELECT *
FROM tablename t
WHERE NOT EXISTS (
SELECT 1
FROM tablename t2
WHERE t2.column = t.column
HAVING COUNT(*) = 1
)
只需将“选择*”更改为“删除”
DELETE
FROM tablename t
WHERE NOT EXISTS (
SELECT 1
FROM tablename t2
WHERE t2.column = t.column
HAVING COUNT(*) = 1
)
将select*更改为delete…P.S.,如果您有重复项,则需要开始了解。是的,我尝试了此操作,但显示错误:1064-您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在第2行“不存在的地方选择1 FROM norma”附近使用的正确语法。Kolation是utf8mb4_Bin MySQL的哪个版本?是的,我尝试过,但显示错误:1064-您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在第2行的“不存在的地方从norma中选择1”附近使用的正确语法