[英]Query MYSQL - mysql query distinct count
我有下表:
ID_PERSON NAME_PERSON
001 JHON SLAVE
002 BRUCE WILLIAN
001 PAUL BYLING
例如,我想知道 ID_PERSON 001 鏈接到不同名稱的情況有多少(明顯)
我當前的查詢:
SELECT ID_PERSON, COUNT(DISTINCT(NAME_PERSON))
GROUP BY ID_PERSON
HAVING COUNT(DISTINCT(NAME_PERSON)>1
我預計 output 是 2 條記錄:Jhon 的 001 和 Paul 的 001
由於我的表有數百萬條記錄,因此它沒有執行
SELECT t1.*
FROM src_table t1
JOIN ( SELECT ID_PERSON
FROM src_table t2
GROUP BY ID_PERSON
HAVING COUNT(DISTINCT(NAME_PERSON) > 1 ) t3 USING (ID_PERSON)
SELECT *
FROM src_table t1
WHERE EXISTS ( SELECT NULL
FROM src_table t2
WHERE t1.ID_PERSON = t2.ID_PERSON
AND t1.NAME_PERSON <> t2.NAME_PERSON )
還有更多變體。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.