MySQL očekává datové literály , nikoli celočíselné:
SELECT *
FROM table
WHERE DATE(timestamp_field) BETWEEN '2012-03-01' AND '2012-05-04'
Chcete-li použít celá čísla (za předpokladu, že jde o sekundy od epochy UNIX), nejprve je převeďte pomocí FROM_UNIXTIME()
funkce:
SELECT *
FROM table
WHERE timestamp_field BETWEEN FROM_UNIXTIME(1330560000)
AND FROM_UNIXTIME(1336170420)
Nebo použijte UNIX_TIMESTAMP()
převést sloupec na jeho reprezentaci UNIX:
SELECT *
FROM table
WHERE UNIX_TIMESTAMP(timestamp_field) BETWEEN 1330560000 AND 1336170420