lafferma Geschrieben 4. Juli 2008 Teilen 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jan Jansen Geschrieben 4. Juli 2008 Teilen 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) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lafferma Geschrieben 4. Juli 2008 Autor Teilen 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jan Jansen Geschrieben 4. Juli 2008 Teilen 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lafferma Geschrieben 4. Juli 2008 Autor Teilen Geschrieben 4. Juli 2008 SUPER... Genau das was ich gesucht habe!! Herzlichen Dank!! GENIAL Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.