SQL NOW() liefert nicht den eintrag des heutigen Datums
Hi...
Ich habe ein SQL-Query das mir aus einer art Eventdatenbank die nächsen 3 Termine vom aktuellen tag an anzeigen soll. Die Events vom aktuellen tag sollen dabei mit einbezogen werden.
Das Ganze wird in ner ASP Seite dargestellt, entwiklungsumgebung ist Visual Studio 2005 (eher unwichtige infos, da es ja mehr um SQL geht, aber man weiß ja nie wo der Fehler liegen könnte ^^)
Mein Query sieht folgendermmaßen aus:
SELECT TOP (3) eventdatetime, eventsubject, eventlink FROM calendar WHERE (eventdatetime >= { fn NOW() }) ORDER BY eventdatetime
eventdatetime hat den Datentyp datetime und ist nur auf den Tag genau, also steht im Format dd.MM.yyyy 00:00:00
Das Problem ist, das die Termine vom heutigen Tag nicht mit ausgegeben werden. Bei testweise
eventdatetime = { fn NOW()}
bekomm ich garkein Eintrag, bei
eventdatetime <= { fn NOW()}
auch nur alle die kleiner sind, aber nie die vom aktuellan Datum.
Und: Ja, es gibt einträge für das heutige Datum ;-)
Wie bekomm ich die Einträge vom heutigen Datum?
Danke schonmal...
Gruß Jörg
Antwort schreiben
Antwort 1 von Teerbaby vom 25.01.2020, 09:35 Options
versuch mal:
WHERE (format(eventdatetime,"yyyymmdd") >= format(NOW(),"yyyymmdd") )
Antwort 2 von _mpact vom 25.01.2020, 09:44 Options
Leider nich
Zitat:
'format' is not a recognized built-in function name.
Antwort 3 von _mpact vom 25.01.2020, 10:59 Options
Habs selbst gefixt - war wohl ein Uhrzeitproblem. Habe anstatt automatisch 00:00:00 dranhängen zu lassen einfach per Code 23:59:00 als fiktive Uhrzeit angehängt, damit kommt SQL wohl besser zurecht..