mysql怎么查询重复
时间 : 2023-07-28 04:55:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

如果你想查询MySQL数据库中的重复记录,你可以使用GROUP BY和HAVING子句来完成。下面是一些可以帮助你完成这个任务的SQL查询方法:

方法1:使用GROUP BY和HAVING子句

```sql

SELECT column1, column2, ..., columnN, COUNT(*) as count

FROM table

GROUP BY column1, column2, ..., columnN

HAVING count > 1;

上述查询将返回所有在指定列(column1, column2, ..., columnN)中出现多次的记录。

方法2:使用子查询和EXISTS关键字

```sql

SELECT column1, column2, ..., columnN

FROM table t1

WHERE EXISTS (

SELECT 1

FROM table t2

WHERE t1.column1 = t2.column1 AND t1.column2 = t2.column2 AND ... AND t1.columnN = t2.columnN

GROUP BY column1, column2, ..., columnN

HAVING COUNT(*) > 1

)

上述查询将返回所有在指定列(column1, column2, ..., columnN)中出现多次的记录。

方法3:使用JOIN子句

```sql

SELECT t1.column1, t1.column2, ..., t1.columnN

FROM table t1

JOIN (

SELECT column1, column2, ..., columnN

FROM table

GROUP BY column1, column2, ..., columnN

HAVING COUNT(*) > 1

) t2

ON t1.column1 = t2.column1 AND t1.column2 = t2.column2 AND ... AND t1.columnN = t2.columnN;

上述查询将返回所有在指定列(column1, column2, ..., columnN)中出现多次的记录。

根据你的具体需求,可以选择适合的方法来查询重复记录。记得替换上述代码中的"table"为你自己的表名,并根据需要替换列名(column1, column2, ..., columnN)。