Announcement

Collapse
No announcement yet.

Aktuellsten Eintrag zu einer ID auiswählen

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

  • Aktuellsten Eintrag zu einer ID auiswählen

    Ja, mit dem JOIN Befehl kann ich mich einfach nicht anfreunden. Nachdem ich jetzt eine ganze Weile versucht habe,
    deine Lösung (tausend Dank an dieser Stelle) umzusetzen, hat es doch einwandfrei funktioniert.

    Wenn ich so unverschämt sein darf, hätte ich gleich noch eine zweite Frage.
    Und zwar habe ich diese Tabellenform:
    Code:
    TABELLE A
    => ID, FREMDID2, FREMDID3, TIMESTAMP
    Die Fragestellung:
    Am Besten mache ich ein Beispiel, weil es für mich irgendwie schwer in Worte zu fassen ist:
    Mögliche Einträge:
    ID FREMDID2 FREMDID3 TIMESTAMP
    1 20 30 2012-01-01 10:00:00
    2 20 40 2012-01-01 12:00:00
    3 10 30 2012-01-01 10:00:00
    4 10 30 2012-01-01 12:00:00
    Ich möchte für eine spezifische FREMDID3 - hier z.B. "30" die aktuellsten Einträge haben und zwar zu jeder FREMDID2,
    dabei sollte die FREMDID2 in der Ergebnisliste nicht auftauchen, wenn entweder eine andere FREMDID2 (hier z.B. "40")
    einen aktuelleren Eintrag zu FREMDID2 besitzt. Oder es ältere Einträge zu FREMDID2 gibt, z.B. sollte bei ID 3 & 4 dann nur die 4 in der
    Ergebnisliste auftauchen.
    Gewünschtes Ergebnis für eine Abfrage sollte also sein:

    ID FREMDID2 FREMDID3 TIMESTAMP
    1 10 30 2012-01-01 12:00:00
    Ich hab schon Probleme dabei es zu erklären. Vielleicht ist wie gesagt mein Tabellenaufbau dafür auch ungeeignet.

    Vielen Dank nochmal an Falk, ich gehe da mit gefährlichem Halb-Kaum-Wissen ran, da es sich nur um ein Hobby-Projekt handelt und ich gerade eben diese Daten irgendwie ablegen will.

    Grüße
    haupt.Dev
    Zuletzt editiert von hauptDev; 14.11.2012, 14:52. Reason: Formatierungsänderung

  • #2
    Hallo,
    Originally posted by hauptDev View Post
    ...Wenn ich so unverschämt sein darf, hätte ich gleich noch eine zweite Frage.
    Bei einer neuen Frage mach beim nächsten Mal bitte auch ein neues Thema auf! (Ich habe das hier mal für dich gemacht )

    Zur Frage:
    Eeinige Lösungsvorschläge, wie man aus einer Liste immer nur die aktuellsten Einträge auswählt, findest du hier: Bei "doppelten" Datensätzen nur einen anzeigen
    Für dein zweites Kriterium benötigst du ein Subselect in der WHERE-Klausel. z.B. in der Form "... WHERE NOT EXISTS ..." oder "... WHERE NOT IN ..."

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Originally posted by hauptDev View Post
      Ich möchte für eine spezifische FREMDID3 - hier z.B. "30" die aktuellsten Einträge haben und zwar zu jeder FREMDID2,
      dabei sollte die FREMDID2 in der Ergebnisliste nicht auftauchen, wenn entweder eine andere FREMDID2 (hier z.B. "40")...
      Das steht im Widerspruch zu deinen Daten, dort gibt es keinen Eintrag mit FREMDID2=40. Meinst du hier vlt. FREMDID3?

      Originally posted by hauptDev View Post
      ... z.B. sollte bei ID 3 & 4 dann nur die 4 in der Ergebnisliste auftauchen.
      Warum taucht dann die ID 1 in deiner Ergebnisliste auf?

      Solche "Schusslichkeiten" machen die Suche nach einer Lösung nicht unbeding leichter...

      Gruß Falk
      Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

      Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

      Comment


      • #4
        Originally posted by Falk Prüfer View Post
        Das steht im Widerspruch zu deinen Daten, dort gibt es keinen Eintrag mit FREMDID2=40. Meinst du hier vlt. FREMDID3?
        Ja, tut mir leid, da habe ich mich verschrieben.

        Originally posted by Falk Prüfer View Post
        Warum taucht dann die ID 1 in deiner Ergebnisliste auf?
        Ich habe schon wieder ein Schritt weiter gedacht und war dabei, dass dies nicht das Ergebnis des SELECTs ist, sondern die View, die auf dem
        SELECT-Befehl aufbaut. ID 4 wäre hier natürlich richtig.

        Originally posted by Falk Prüfer View Post
        Solche "Schusslichkeiten" machen die Suche nach einer Lösung nicht unbeding leichter...
        Gruß Falk
        Ja, ich bitte dies zu entschuldigen.

        Vielen Dank für deine Weiterleitung auf deinen Thread.
        Habe mit deinen Tipps das Problem gelöst bekommen.

        Grüße
        hauptDev

        Originally posted by Falk Prüfer View Post
        Bei einer neuen Frage mach beim nächsten Mal bitte auch ein neues Thema auf! (Ich habe das hier mal für dich gemacht )
        Werde ich zukünftig beachten.

        PS: Der Thread kann somit geschlosse/als gelöst markiert werden.

        Comment

        Working...
        X