DELETE的MySQL在一个表中

问题描述:

我有一个数据库只有一个表如下:DELETE的MySQL在一个表中

userurltag(id,userID(string),Url(String),tag(String)) 

我想删除具有与之相关的不到3个网址的用户。 我该怎么做?

试试这个:

DELETE 
    FROM userurltag USING userurltag 
    JOIN 
     (SELECT userID 
     FROM userurltag 
     GROUP BY userID HAVING COUNT(*) < 3) as tmp 
ON userurltag.userID = tmp.userID; 
+1

替换 “USER_ID” 与 “用户id” 和 “t.userid” 与 “userurltag.userid”,这应该工作。 – 2010-05-25 23:31:55

+0

@Ike Walker:你是对的,我玩了一个稍微不同的表格结构,并没有彻底修改查询=) – newtover 2010-05-25 23:38:46

DELETE 
FROM userurltag 
WHERE UserID IN 
(SELECT UserID FROM userurltag GROUP BY userID Having COUNT(UserID) < 3)