Thomas: HILFE SQL Tabellenvergleich

Beitrag lesen

Hallo!

Ilja's Lösung hat bei mir unter Host-DB2 leider zu keinem Ergebnis geführt.
Habe es mit folgenden Beispieldaten
     Saison: SAISON
             W2002
             W2003
     Person: PERSON   SAISON
             ALPHA    W2002     s
             BETA     S2002
             CHARLIE  W2003     s
             DELTA    S2002
             DELTA    W2002     s
             ECHO     W2002     s  S
             ECHO     W2003     s  S
             FOXTROTT S2002
             FOXTROTT W2003     s
             GOLF     S2002
             GOLF     W2002     s  S
             GOLF     W2003     s  S
Die mit dem kleinen 's' markierten Zeilen matchen beim Join, aber nur die mit großem 'S' markierten dürften relevant sein, weil beide vorhanden sein müssen, wenn ich die Frage richtig verstanden habe.
Dafür habe ich den folgenden SQL gebaut:
     SELECT P.PERSON
     FROM   DB00070.PERSON_SAISON           AS P
          , DB00070.SAISON                  AS S
          , (SELECT COUNT(*)      ANZ_SAIS
             FROM DB00070.SAISON          ) AS Z
     WHERE P.SAISON = S.SAISON
     GROUP BY   P.PERSON
              , Z.ANZ_SAIS
              HAVING COUNT(*) = Z.ANZ_SAIS
     WITH UR;
Als Ergebnis kamen auch nur die Leute 'ECHO' und 'GOLF' heraus.
Stellt sich die Frage, ob 'GOLF', der außerdem noch die Saison 'S2002' hat, dabei sein darf.