lafferma Geschrieben 4. Juli 2008 Geschrieben 4. Juli 2008 Hallo Zusammen, Ich möchte aus einer Tabelle eine Liste erstellen, wo ich bei doppelten Einträgen jeweils nur einen Eintrag (z.B. den Ersten) angezeigt bekomme. Es ist eine Oracle-DB Mit folgender SQL-Anweisung: SELECT DISTINCT ID AS "ID", DATUM AS "Datum", NUMMER AS "Nummer", bAS "b" FROM Tabelle GFP WHERE b IS NOT NULL AND b <> '-' AND b <> '0' AND b = '011365005037415' --AND b NOT IN (SELECT MIN( FROM Tabelle GROUP BY ID, DATUM, NUMMER, b --HAVING GFP.ID> MAX(ID) ORDER BY b Erhalte ich folgendes Resultat: ID; Datum; Nummer; b 103016; 31.01.2008; 0791112233; 011365005037415 103016; 29.02.2008; 0791234567; 011365005037415 Ich möchte aber nur einen Eintrag anzeigen, welchen ist mir eigentlich egal. Habt ihr eine Idee?? Herzlichen Dank
Jan Jansen Geschrieben 4. Juli 2008 Geschrieben 4. Juli 2008 Die Eintrage haben ein unterschiedliches Datum und eine doppelte Nummer, "doppelt" sind sie somit nicht wirklich DISTINCT braucht man nicht bei der Verwendung von GROUP BY GROUP BY verwendet man meist in Zusammenhang mit Aggregatfunktionen, warum verwendest du es hier? Eine mögliche Lösung wäre im SELECT ein "min(datum)" zu verweden und "datum" aus dem "GROUP BY" zu entfernen (damit hättest du auch eine Aggregatfunktion verwendet und das GROUP BY macht Sinn)
lafferma Geschrieben 4. Juli 2008 Autor Geschrieben 4. Juli 2008 Danke für die Antwort. Ok, ein Min(Datum) macht zwar bei diesen zwei Einträgen Sinn, aber wenn ich im Statement das AND b = '011365005037415' entferne, was ich muss (verwendete es hier nur als beispiel) funktionierte das mit dem Min(Datum) nicht mehr!? Oder sehe ich das Falsch?? Habe mit dem Statement herum getestet, aber beide Varianten (nur DISTINCT oder nur GROUP BY) haben gleiches Resultat geliefert. MERCI
Jan Jansen Geschrieben 4. Juli 2008 Geschrieben 4. Juli 2008 doch, für Nummer gilt das gleiche wie für Datum, auch min() im SELECT und aus dem GROUP BY entfernen, hab ich beim letzetn Posting übersehen
lafferma Geschrieben 4. Juli 2008 Autor Geschrieben 4. Juli 2008 SUPER... Genau das was ich gesucht habe!! Herzlichen Dank!! GENIAL
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden