簡體   English   中英

MySQL-如何返回不同的ID,其中相同ID的所有行的字段值均為空

[英]MySQL - How to return distinct IDs where all rows for the same ID have null field value

我有一個帶有兩個聯接的查詢,該查詢返回此數據:

ID分數
1空
1 5
1 6
2空
2空
3 5
3 8
3 3
3空
3空
3 7
4 NULL
4 NULL
4 3
4 9

我想為具有相同ID的每一行返回在Score列中具有NULL值的唯一ID。 在這種情況下,查詢應僅返回ID為2的一行,因為那是在Score列中唯一具有所有NULL值的ID。

謝謝!

您可以通過將原始查詢作為子選擇並在具有空值的score列上適當地使用count()來匯總原始查詢,因此,如果特定ID所有值均為NULL,則count將返回0,因此可以使用having子句過濾您的使用count(Score)結果的結果count(Score)

select ID,
  count(Score) count_null 
from (your query)t
group by ID
having count_null = 0

演示基於您的樣本數據集

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM