Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zeigen Sie Zeilen aus MySQL an, bei denen eine Datumszeit innerhalb der nächsten Stunde liegt

Ich gehe davon aus, dass Sie sich eine Gruppe von Datensätzen ansehen, die eine Reihe von DATETIME-Werten enthalten, also möchten Sie wahrscheinlich eher so etwas:

SELECT id,
       name, 
       info, 
       date_time
FROM acms_events
    WHERE date_time < DATE_ADD(NOW(), INTERVAL 1 HOUR)
        AND date_time >= NOW()
        AND active = 1
ORDER BY date_time ASC
LIMIT 6

Andernfalls sucht Ihre Abfrage nach Datensätzen mit einer date_time von genau "jetzt + 1 Stunde". Ich gehe davon aus, dass alle Ihre Daten nicht spezifisch für diese bestimmte Sekunde sind.;)

Zur Verdeutlichung, DATE_ADD() und DATE_SUB() exakte Zeitstempel zurückgeben, sodass Ihre obige Abfrage grob in etwas wie SELECT ... WHERE date_time = '2010-04-14 23:10:05' ORDER BY ... übersetzt werden kann , was meiner Meinung nach nicht das ist, was Sie wollen.