SELECT * FROM `posts` WHERE `date` > (NOW() - 3600*24*7)
SELECT * FROM `posts` WHERE UNIX_TIMESTAMP(`date`) > UNIX_TIMESTAMP(NOW() - 3600*24*7)
Ведь такая запись, мне кажется тяжелой, при большом количестве данных?вы б переживали не о тяжести, а о правильности/вменяемости кода.