目标是数数;有多少user_id有多个记录。
结果将是:2
(只有一条记录应该返回)
数据
user_id |价值
12 |价值1
25 |价值2
25 |价值3
17 |价值4
17 | value5
感谢大家的快速回复!
答案 0 :(得分:1)
我不确定我的问题是否正确,但不应该做以下工作?
SELECT user_id, count(*)
FROM mytable1
GROUP BY user_id
HAVING count(*) > 1
- >结果是所有user_id,包含多个条目
或者如果你想计算有多少条目不是唯一的..
SELECT COUNT(*) AS AreDublicate
FROM (
SELECT user_id
FROM mytable1
GROUP BY user_id
HAVING count(*) > 1
) myTable
- >结果有多少不是唯一的..(在你的情况下是2)
答案 1 :(得分:1)
要获得单个数字,您需要内部和外部查询,如下所示:
SELECT COUNT(*) FROM (
SELECT user_id
FROM mytable1
GROUP BY user_id
HAVING count(*) > 1
) iq
答案 2 :(得分:0)
select gt1.Id, COUNT(*)
from GroupText gt1
inner join GroupText gt2 on gt1.Id = gt2.Id and gt1.text != gt2.text
group by gt1.id