工作中我们经常会遇到查询数据表中重复数据的需求,可以用count、group by、having实现,将要查重复的字段进行分组,并计算每个字段出现的次数,最后使用having查询出现次数大于0的数据。
示例SQL如下:
SELECT
phone,
count( phone )
FROM
`user`
GROUP BY
phone
HAVING
count( phone ) > 1
如果想要查询多个列的组合是否重复,那么在GROUP BY子句中包含这些列即可,示例如下:
SELECT
phone,
`name`,
count( * )
FROM
`user`
GROUP BY
phone,
`name`
HAVING
count( * ) > 1