|
|
|
| Мне нужно добавлять объявления в БД. Там они должны размещаться на 10 дней, точнее поиск за последние 10 дней.
Вот думаю как мне это реализовать с помощью полей DATETIME, DATE и TIMESTAMP - не кто не подскажет?
И ещё:
DATETIME - автоматически вставляетяся? И когда я сравнивать буду DATETIME не используя точность - минут, часов - только дни, то минуты автоматически сравниваться будут с текущими?
И как мне зделать запрос - что мол показать тока последние объявление за 10 дней, какая команда должна быть в запросе SQL? | |
|
|
|
|
|
|
|
для: mogul82
(19.01.2009 в 16:25)
| | 1. Я бы TIMESTAMP использовал. Если сделать индекс по этому полю, то выбирать объявления в зависимости от времени можно будет практически мгновенно. Да и в любом случае выборка по целочисленным полям быстрее.
2. DATETIME - автоматически вставляетяся?
да, есть такая возможность.
> И как мне зделать запрос - что мол показать тока последние объявление за 10 дней, какая команда должна быть в запросе SQL?
Если использовать TIMESTAMP то:
SELECT * FROM ads WHERE create_date > UNIX_TIMESTAMP() - 10*24*3600
|
| |
|
|
|
|
|
|
|
для: Axxil
(19.01.2009 в 17:22)
| | UNIX_TIMESTAMP() - без это во бы, можно как нить? | |
|
|
|
|
|
|
|
для: mogul82
(19.01.2009 в 18:31)
| | можно пхпшную функцию date("U") использовать.
А чем не нравится UNIX_TIMESTAMP() ? | |
|
|
|
|
|
|
|
для: mogul82
(19.01.2009 в 16:25)
| | А как изменить значение date и datetime. Я нашёл тока без указания таблицы. -
ADDDATE('2008-09-21 22:36:43', INTERVAL 10 DAY) | |
|
|
|