sql - 无法生成查询以在同一成员记录下查找多个

标签 sql mysql

我有以下示例表:

 ID    |     Code
=================
1      |     123
2      |     123
2      |     456
2      |     456
2      |     789
3      |     123
3      |     789

我想返回单个ID出现相同代码的ID和代码。

基于上表的所需查询的结果将是:

ID   |    Code
==============
2    |    456

因为代码 456 对于 ID 2 出现了两次。

我一直在使用的查询(没有返回所需的结果是:

select id, code from table group by code having count(code) > 1;

注意:上面的查询将返回 456 和 789,因为它们都出现了不止一次,但我只希望它显示单个 ID 多次出现的记录。

最佳答案

需要按两列分组

SELECT id, code 
FROM table 
GROUP BY id, code 
HAVING COUNT(code) > 1;

关于sql - 无法生成查询以在同一成员记录下查找多个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4514550/

相关文章:

SQL Server,将秒转换为分钟、小时、天

php - 我如何关闭或退出Ubuntu 18.04中安装的Docker?

python - 不在 MySQL 表中插入值

mysql - 获取当前日期(月)起两个不同年份的月份和记录列表

MYSQL SQL(自)加入?

sql - 如果不存在则插入到表中并在两种情况下返回 id

MySQL - 如何连接多个查询?

sql - 在SQL中查找一年中最常见的元素

php - 显示记录的性能问题

c# - 如何从 sql 数据库中检索 asp.net mvc 中的行数?