2010-12-22 19 views
0

Ich habe eine Tabelle mit Feldern mit 3: id (int 11), Benutzer (VARCHAR 255) und Daten (DATETIME-).MySql - Auswählen Wert mit Datumzeit = DATETIME-3 minuts

Ich brauche Somethings wie:

SELECT user FROM counter WHERE date>'ACTUAL DATA - 3 MINUTS' 

Also ich alle Benutzernamen mit Daten zwischen dem Ist-Daten zurückgeben kann - 3 minuts und die tatsächlichen Daten. Wie Rückkehr alle Benutzernamen zwischen 2010-12-22 18.32.00 und 2010-12-22 18:35:00

Wie kann ich es mit MySql tun?

+0

was "Ist-Daten"? –

Antwort

3

Ja, Sie müssen die SUBTIME() Funktion verwenden.

SELECT user FROM counter WHERE date > SUBTIME('yourdate', '0:03');

EDIT

Da Sie Ihre Frage hier ist eine aktualisierte Antwort geändert:

SELECT user FROM counter WHERE date BETWEEN SUBTIME('yourdate', '0:03') and 'yourdate'

+0

Uhmn, ich denke, das ändert sich nicht, denn als "yourdate" passiere ich das eigentliche Datum (ich bekomme es mit PHP). Sieht aus, dass es funktioniert;) – markzzz

+0

In diesem Fall, nicht das Datum von PHP bekommen, ersetzen '' yourdate'' mit 'NOW()' –

+0

Was ist der Unterschied Ihrer Meinung nach setzen Sie die PHP-Variable mit Datum oder rufen Sie JETZT () – markzzz

1
SELECT user FROM counter WHERE date > DATE_SUB(dateColumn, INTERVAL 3 MINUTE) 
1
SELECT user FROM counter WHERE date BETWEEN NOW() - INTERVAL 3 MINUTE AND NOW()