|
|
|
| Подскажите пожалуйста, как вывести из базы все записи за 1 день?
Если формат даты в timestamp | |
|
|
|
|
|
|
|
для: oli
(02.01.2012 в 22:39)
| | Нашел вот такой пример, он сойдет?
SELECT * FROM notes WHERE `date` > NOW() - INTERVAL 1 DAY
|
| |
|
|
|
|
|
|
|
для: OLi
(02.01.2012 в 22:40)
| | Да, сойдет. Только следует учитывать, что выборка за последние сутки, а не с начала дня. | |
|
|
|
|
|
|
|
для: cheops
(02.01.2012 в 23:09)
| | А можете мне пояснить запрос, чтобы я разобрался, потому как его нашел в интернете, и что следует дописать, чтобы с начала дня делал выборку? | |
|
|
|
|
|
|
|
для: OLi
(02.01.2012 в 23:20)
| | Здесь от текущей даты NOW() вчитаются одни сутки INTERVAL 1 DAY. Получается выборка всех записей от точки времени сутки назад до текущего момента. | |
|
|
|
|
|
|
|
для: cheops
(02.01.2012 в 23:43)
| | Понял, а конкретно за сутки как вывести? | |
|
|
|
|
|
|
|
для: OLi
(02.01.2012 в 23:47)
| | Есть бронебойный прием (не самый скоростной правда), воспользоваться оператором LIKE, т.е. формируете конкретные сутки, например 2012-01-02, добавляете % и подставляете в LIKE
SELECT * FROM notes WHERE `date` LIKE '2012-01-02%';
|
| |
|
|
|
|
|
|
|
для: cheops
(02.01.2012 в 23:51)
| | Ох, у меня timstamp, как быть с ним? | |
|
|
|
|
|
|
|
для: OLi
(03.01.2012 в 00:20)
| | Не могу найти решение, буду рад помощи | |
|
|
|
|
|
|
|
для: OLi
(03.01.2012 в 04:19)
| | Можно использовать frrom_unixtime и curdate
Или to_days | |
|
|
|
|
|
|
|
для: OLi
(03.01.2012 в 00:20)
| | Да там же сейчас помоему такой же формат, как DATETIME, да будет медленнее, но все должно работать... или не срабатывает (сам не очень люблю TIMESTAMP, быстрее триггер повешу, чем им воспользуюсь - много подводных камней)? | |
|
|
|