Announcement

Collapse
No announcement yet.

GROUP BY nur unter Vorraussetzungen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • GROUP BY nur unter Vorraussetzungen

    Hallo Zusammen,

    folgenden Code habe ich:

    Code:
    CREATE TABLE Datensatz_2
    SELECT rh.*
    FROM Datensatz_Basis rh,
       (SELECT max(datum) as maxdate, code, application_id
         FROM Datensatz_Basis
         GROUP BY application_id) maxresults
    WHERE rh.application_id = maxresults.application_id
    AND rh.datum = maxresults.maxdate;
    Damit bekomme ich für jede application_id den Datensatz mit dem größten (also aktuellsten) Datum.
    Jetzt stellt sich mein Problem aber etwas schwieriger dar ...
    Im Prinzip brauche ich eine abgewandte Abfrage die nur unter einer bestimmten Vorraussetzung dass maxdate ermittelt und danach gruppiert. Nämlich nur, wenn ein weiteres Feld (was in Datensatz_Basis enthalten ist) "name" leer ist.

    D.h. also: Gibt es kein Feld (unter den Datensätzen mit der gleichen application_id) wo das Feld "name" beschrieben ist -> nehme die Zeile mit maxdate wie oben beschrieben.
    Ist aber das Feld "name" in einem oder mehreren (dann das mit dem größten Datum) Datensätzen beschrieben -> nehme diese Zeile

    Ist das verständlich?

    Viele Grüße
    Alex

  • #2
    Bedingungen für Gruppierungen kann man mit HAVING setzen

    Comment

    Working...
    X