Chris: SQL Abfrage

Hallo,

ich versuche krampfhaft eine vernünftige SQL-Abfrage für folgende Problematik zu finden:

Beispieldatenbank:

Name+++++++++++Datum+++++++++++++
---------------------------------

beispiel1++++++Timestamp(Datum1)
beispiel1++++++Timestamp(Datum2)
beispiel2++++++Timestamp(Datum1)
beispiel2++++++Timestamp(Datum2)
beispiel3++++++Timestamp(Datum2)

Abfrage: Zeig alle Namen die es beim letzten Datum noch nicht gab (also alle neuen)

Ergebniss: beispiel3

Danke im Vorraus

Chris

  1. Hi,

    Timestamps unterstützen >-Vergleiche. Wenn du also den neuen Timestamp weißt, dann müsste ein (schematisch, bitte Syntax nachschlagen)
    SELECT name FROM tabelle aussen
    WHERE NOT EXISTS (SELECT name FROM tabelle innen WHERE innen.name = aussen.name AND datum = neuertimestamp)

    MfG
    Rouven

    --
    -------------------
    Inter Arma Enim Silent Leges  --  Cicero
  2. yo,

    beispiel1++++++Timestamp(Datum1)
    beispiel1++++++Timestamp(Datum2)
    beispiel2++++++Timestamp(Datum1)
    beispiel2++++++Timestamp(Datum2)
    beispiel3++++++Timestamp(Datum2)

    Abfrage: Zeig alle Namen die es beim letzten Datum noch nicht gab (also alle neuen)

    Ergebniss: beispiel3

    wenn ich mir deine aufgabe lese und dein ergebnis bei den beispieldaten anschaue, dann meinst du nach meiner kristallkugel nicht das letzte datum, sondern das datum vor dem letzten datum. also beispiel3 kommt nur mit dem datum2 vor und nicht mit dem datum1. ich kann mich dabei aber auch irren.

    bevor man eine abfrage entwickelt, wäre ein paar angaben noch hilfreich. welches dbms, welche version, gibt es noch andere daten in der datenbank, sprich können noch andere dattumswerte als die beiden unterschiedlichen vorkommen, etc.

    Ilja