QUERY RECORDS WITHIN 48 hours
Here is 24 hours

SELECT info FROM table
WHERE date &gt; UNIX_TIMESTAMP(NOW() - INTERVAL 1 DAY);


or

SELECT info FROM table
WHERE date &gt; UNIX_TIMESTAMP(NOW() - INTERVAL 24 HOUR);


or your way

SELECT info FROM table
WHERE date &gt; (UNIX_TIMESTAMP(NOW()) - 86400); 


Here is 48 hours

SELECT info FROM table
WHERE date &gt; UNIX_TIMESTAMP(NOW() - INTERVAL 2 DAY);


or

SELECT info FROM table
WHERE date &gt; UNIX_TIMESTAMP(NOW() - INTERVAL 48 HOUR);


or your way

SELECT info FROM table
WHERE date &gt; (UNIX_TIMESTAMP(NOW()) - (86400 * 2)); 


Here is 30 days

SELECT info FROM table
WHERE date &gt; UNIX_TIMESTAMP(NOW() - INTERVAL 30 DAY);


or your way

SELECT info FROM table
WHERE date &gt; (UNIX_TIMESTAMP(NOW()) - (86400 * 30)); 


Your last expression WHERE date &gt; (UNIX_TIMESTAMP(NOW()) - 86400) is feasible, but requires you to do the number of seconds difference. My additional suggestions lets MySQL do the date computation.