如何在多列上检查mysql表中的重复项

cfr*_*ich 26 mysql sql search duplicates

我有一个棒球运动员表(全部1000左右),有以下字段:

mysql> describe person;
+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| firstname | varchar(30) | NO   |     | NULL    |                |
| lastname  | varchar(30) | NO   |     | NULL    |                |
+-----------+-------------+------+-----+---------+----------------+
Run Code Online (Sandbox Code Playgroud)

但我认为有些球员已经两次加入.我如何查看特定名字,姓氏组合的出现次数?

RC.*_*RC. 62

这提供了重复列表:

SELECT firstname, lastname, COUNT(*) 
FROM person 
GROUP BY firstname, lastname 
HAVING COUNT(*) > 1;
Run Code Online (Sandbox Code Playgroud)

如果要查看每行的计数,请删除having子句:

SELECT firstname, lastname, COUNT(*) 
FROM person 
GROUP BY firstname, lastname;
Run Code Online (Sandbox Code Playgroud)

  • 显然,最好的答案是可能的. (3认同)