-1

我的数据库中有一个表,duplicate_id其中包含多个 id,并且其中还包含许多重复的 id。我一直在尝试做的是对表中重复次数最多的前五个 id 进行排序duplicate_id。请让我知道我该怎么做

表结构: ID | 信息

预期输出:

身份证 | 重复次数

201 8

212 7

205 5

209 3

229 2

4

3 回答 3

2
SELECT ID, COUNT(*) AS `Number of repeats`
FROM duplicate_id
GROUP BY ID
ORDER BY COUNT(*) DESC
LIMIT 5
于 2012-11-09T06:58:06.690 回答
1

尝试按以下顺序排序您的结果:

Select * from table order by repeats desc limit 5
于 2012-11-09T06:57:34.403 回答
0

好吧...试试这个(我不知道mysql,所以我不得不猜测)

select ID, 
       count(*) as 'Number of Repeats'
from   duplicate_ID
group  by ID
order  by 2

另一种方法是

select ID, 'Number of Repeats'
from (
  select ID, 
         count(*) as 'Number of Repeats'
  from   duplicate_ID
  group by ID
  ) x
order by 'Number of Repeats'
于 2012-11-09T07:02:23.237 回答