Nächst älterer/jüngerer Beitrag

  • EDIT: Das Problem hat sich gelöst. Der SQL-Code ist korrekt, die Fehlerursache muss bei meinen Tests entstanden sein.

    Hallo allerseits,

    Ich steh grad vor einem Problem weches ich mir bei bestem Willen nicht erklären kann. Aus einer Datenbank für Mitteilungen möchte ich die nächst ältere und nächst jüngere Nachricht innerhalb der aktuellen Kategorie auslesen. Das wollte ich wie folgt verwirklichen:

    $category und $date sind dabei jeweils die Kategorie und das Datum der aktuellen Mitteilung. Wenn ich diesen SQL-Code jetzt aber in phpMyAdmin teste, so liefert mir der Code für die nächst jüngere mit dem Testwert 2012-06-23 als Ergebnis einen älteren Eintrag, den von 2012-05-30.

    Jetzt bin ich mir nicht sicher, was da falsch gehen könnte, nach meiner Überlegung sollte der Code so funktionieren. Deshalb die Frage an euch. Sieht jemand das Problem in meinem Code, oder hat da MySQL oder sogar phpMyAdmin irgend ein Sonderbenehmen dessen ich mir nicht bewusst bin?

    Gurss und Danke im Voraus,
    -Lukas

    2 Mal editiert, zuletzt von lukasn (14. Januar 2013 um 13:09) aus folgendem Grund: Kopierfehler im Code korrigiert.

  • $date in der WHERE-Klausel gehört in Hochkommata. Da die fehlen interpretiert MySQL die 2012-06-23 als Timestamp und konvertiert es nach INT zum vergleichen.

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook