2 Stunden zur aktuellen Zeit in MySQL hinzufügen?


175

Welches ist die gültige Syntax dieser Abfrage in MySQL?

SELECT * FROM courses WHERE (now() + 2 hours) > start_time

Hinweis: start_time ist ein Feld der Kurstabelle

Antworten:





25

Die Funktion DATE_ADD () erledigt den Trick. (Sie können auch die Funktion ADDTIME () verwenden, wenn Sie mindestens Version 4.1.1 ausführen.)

Für Ihre Anfrage wäre dies:

SELECT * 
FROM courses 
WHERE DATE_ADD(now(), INTERVAL 2 HOUR) > start_time

Oder,

SELECT * 
FROM courses 
WHERE ADDTIME(now(), '02:00:00') > start_time

Wenn es nur Beispiele gäbe.
TMS

Die Dokumentation enthält einige gute Beispiele (und SO ist kein Ersatz für die Dokumentation). Im Interesse dieser Frage und zukünftiger Besucher habe ich beide Syntaxen hinzugefügt.
lc.

1

Dies wird auch funktionieren

SELECT NAME 
FROM GEO_LOCATION
WHERE MODIFY_ON BETWEEN SYSDATE() - INTERVAL 2 HOUR AND SYSDATE()
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.