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

mysql select timestamps between a and b return all or 0 timestamps

MySQL erwartet Datumsliterale , nicht ganzzahlige:

SELECT *
FROM   table
WHERE  DATE(timestamp_field) BETWEEN '2012-03-01' AND '2012-05-04'

Um Ganzzahlen zu verwenden (unter der Annahme, dass es sich um Sekunden seit der UNIX-Epoche handelt), konvertieren Sie sie zuerst mit MySQLs FROM_UNIXTIME() Funktion:

SELECT *
FROM   table
WHERE  timestamp_field BETWEEN FROM_UNIXTIME(1330560000)
                           AND FROM_UNIXTIME(1336170420)

Oder verwenden Sie UNIX_TIMESTAMP() So konvertieren Sie Ihre Spalte in ihre UNIX-Darstellung:

SELECT *
FROM   table
WHERE  UNIX_TIMESTAMP(timestamp_field) BETWEEN 1330560000 AND 1336170420