Übrigens geht das auch klassisch:
Der Inner group by liefertCode:select * from ( Select F1, f2, Count(*) Count0, from x Group By F1, F2 ) a cross join lateral ( select count(*) Count1 from x where a.f1 = x.f1 and a.f2 = x.f2 )
10 A B
14 A C
der Join verknüüft einzeln A,B => count 10 und A,C => Count 14
Wenn du lateral join nicht magst, gehts auch mit scalarem subselect:
Der join lateral ist wie ein scalarer Subselect zu sehen, der allerdings auch mehr als 1 Spalte liefern kann.Code:select a.* , ( select count(*) from x where a.f1 = x.f1 and a.f2 = x.f2 ) Count1 from ( Select F1, f2, Count(*) Count0, from x Group By F1, F2 ) a
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)

Mit Zitat antworten
Bookmarks