4
請考慮下表。每個文檔(id
)都屬於一個組(group_id
)。查看同一組中的所有記錄是否爲可接受的類型
-----------------------
id group_id value
-----------------------
1 1 A
2 1 B
3 1 D
4 2 A
5 2 B
6 3 C
7 4 A
8 4 B
9 4 B
10 4 B
11 4 C
12 5 A
13 5 A
14 5 A
15 6 B
16 6 NULL
17 6 NULL
18 6 D
19 7 NULL
20 8 B
1 /每個文檔具有值NULL
,A
,B
,C
或D
2 /如果在同一組中的文件的所有要麼A
或B
作爲值,該組被完成
3 /在這種情況下,所期望的輸出將是:
---------------------
group_id completed
---------------------
1 0 <== because document 3 = D
2 1 <== all documents have either A or B as a value
3 0 <== only one document in the group, value C
4 1 <== all documents have either A or B as a value
5 1 <== all documents have value A
6 0 <== because of NULL values and value D
7 0 <== NULL
8 1 <== only one document, value B
是否有可能查詢此結果集?
因爲我不是很有經驗的SQL,任何幫助將不勝感激!
不會MIN(CASE WHEN [值] IN( 'A', 'B')THEN ELSE 1 0 END)是相同的,並且便宜? – Turo
@Turo - 兩者不一樣 –
在這種情況下它們有區別嗎? – Turo