MySQL attend littéraux de date , et non des entiers :
SELECT *
FROM table
WHERE DATE(timestamp_field) BETWEEN '2012-03-01' AND '2012-05-04'
Pour utiliser des entiers (en supposant qu'ils sont des secondes depuis l'époque UNIX), convertissez-les d'abord à l'aide de MySQL FROM_UNIXTIME()
fonction :
SELECT *
FROM table
WHERE timestamp_field BETWEEN FROM_UNIXTIME(1330560000)
AND FROM_UNIXTIME(1336170420)
Ou bien utilisez UNIX_TIMESTAMP()
pour convertir votre colonne dans sa représentation UNIX :
SELECT *
FROM table
WHERE UNIX_TIMESTAMP(timestamp_field) BETWEEN 1330560000 AND 1336170420