我有一个下表,需要使用普通 sql 获取输出,如下所示 2。如果对于 的任何相同值columnC
确实有“Y” ,则成功计数应为 +1,否则应将其添加到失败计数列输出。我们可以编写一个 SQL(在 Oracle 中)来获得如下所述的输出吗?暂时可以忽略。ColumnA
ColumnD
1. 表
ColumnA ColumnB ColumnC ColumnD File_type
-------- --------- -------- ---------- ------------
11111 A N NULL typeA
11111 B N NULL typeA
11111 C Y SPILL null
11111 D N NULL typeA
22222 A N SPILL typeA
22222 B Y SPILL typeA
22222 C N NULL null
22222 D N NULL typeA
33333 A N NULL typeA
33333 B N NULL null
33333 C N NULL typeA
33333 D N NULL typeA
111110 A N NULL typeB
111110 B N NULL typeB
111110 C Y SPILL null
111110 D N NULL typeB
222220 A N SPILL typeB
222220 B Y SPILL typeB
222220 C N NULL null
222220 D N NULL typeB
333330 A N NULL typeB
333330 B N NULL null
333330 C Y SPILL typeB
333330 D N NULL typeB
2. 所需输出
File_type ColumnD Success_cnt Fail_cnt
---------- -------- ----------- -----------
typeA SPILL 2 1
typeB SPILL 3