MySQL si aspetta valori di data , non interi:
SELECT *
FROM table
WHERE DATE(timestamp_field) BETWEEN '2012-03-01' AND '2012-05-04'
Per utilizzare numeri interi (supponendo che siano secondi dall'epoca UNIX), convertili prima utilizzando FROM_UNIXTIME()
funzione:
SELECT *
FROM table
WHERE timestamp_field BETWEEN FROM_UNIXTIME(1330560000)
AND FROM_UNIXTIME(1336170420)
Oppure usa UNIX_TIMESTAMP()
per convertire la tua colonna nella sua rappresentazione UNIX:
SELECT *
FROM table
WHERE UNIX_TIMESTAMP(timestamp_field) BETWEEN 1330560000 AND 1336170420