0

我有一列包含值,即

number   id
1        111
1        111
3        222
4        222
5        333

我正在检查 ID 是否有多个实例,以及数量是否与第二个或更多实例相同。所以在这里,它会返回 1,因为有 2x 1 的 id 为 111,但 222 不会返回,因为 3 和 4 不一样。

我该怎么做这样的查询?

有人告诉我,我可以做两个或更多查询,而在第二个或更多查询时,我会忽略第一个实例。

4

3 回答 3

2
select id, number
from the_table
group by id, number
having count(*)>1

您应该在两id, and number列上都定义了索引

ps:顺序可以是数字,id ...取决于你的复合索引键

于 2012-11-09T04:23:07.127 回答
0

您应该尝试使用group by子句并查看输出是否符合您的预期:

select number,id from table_name group by number;

于 2012-11-09T04:20:07.967 回答
0

按文档分组

Select number,id from table_name group by number;
于 2012-11-09T04:22:11.717 回答