常用sql语句

//查询重复数据

SELECT * FROM WxAccount u WHERE u.`sessionKey` IN (SELECT sessionKey FROM WxAccount t GROUP BY sessionKey HAVING COUNT(*)>1)
AND u.`wxOpenid` IN (SELECT t2.wxOpenid FROM WxAccount t2 GROUP BY t2.wxOpenid HAVING COUNT(*)>1)

 

//删除多于数据 只留有 id 最小的记录

DELETE FROM WxAccount WHERE id IN
(SELECT u6.id FROM
(SELECT * FROM WxAccount u WHERE u.`sessionKey` IN (SELECT sessionKey FROM WxAccount t GROUP BY sessionKey HAVING COUNT(*)>1)
AND u.`wxOpenid` IN (SELECT t2.wxOpenid FROM WxAccount t2 GROUP BY t2.wxOpenid HAVING COUNT(*)>1)) u6
GROUP BY u6.sessionKey,u6.wxOpenid HAVING COUNT(*)>1)

posted @ 2021-10-08 16:20  青衣跪下  阅读(23)  评论(0编辑  收藏  举报