| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MySQL > Как найти ближайшую дату к указанной? |
| Автор: TheAviator 26.12.2005, 22:27 |
| Сабж. Имею дату типа 2005-06-01 00:00:00. Имею базу с полем DT, где даты хранятся в таком же формате. Как найти номер (Id) поля, значение даты в котором наиболее близко к заданной? Спасибо. |
| Автор: Mal Hack 26.12.2005, 22:36 |
| Выбираем записи сортируем по дате DESC, LIMIT 1. Если надо дату как позже так и раньше, то двумя запросами, либо извратом через UNION SELECT или вложенным СЕЛЕКТом. |
| Автор: mr.fox 27.12.2005, 05:01 |
| where dt between 'x' and 'y' |
| Автор: Mal Hack 27.12.2005, 09:00 |
| mr.fox не факт, что будет именно в этом диапазоне ближайшая дата. |
| Автор: Akina 27.12.2005, 09:44 | ||||
О версии MySQL нам предлагается догадаться самим...
Так что ORDER BY ABS(DATEDIFF()) ASC LIMIT 1
|
| Автор: TheAviator 28.12.2005, 23:08 |
| Akina: Thanks a lot! |