Сортировка по датам

Keepun

Новичок
Сортировка по датам

Не могу запрос составить...

Дано:
Таблица с несколькими полями типа DATE.

Нужно:
Отсортировать запрос по датам из всех полей с типом DATE.

Проблема:
MIN() принимает только 1 аргумент (так он мне сказал) и список полей ему не передать.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Не могу запрос составить...
Как пробовал?

Отсортировать запрос по датам из всех полей с типом DATE.
Order BY ?


MIN() принимает только 1 аргумент (так он мне сказал) и список полей ему не передать.
Объясни, пожалуйста, как ты собрался применять min к сортировке?
:confused:
 

Gas

может по одной?
я так понимаю, нужно что-то типа: ORDER BY LEAST(field1,field2,field3)
 

Bitterman

Новичок
Отсортировать запрос по датам из всех полей с типом DATE
Что значит по датам из всех полей? Если в одном столбце стоит дата максимальная для всей таблицы, а в другом - минимальная, то где должна находиться запись? В середине списка?)))
 

Keepun

Новичок
Gas, угу...
Принцип схож...

Вместо LEAST() я заюзал GREATEST(), чтобы большая дата была сверху. Но проблема: если стоящии в начале поля = NULL, то функа возращает NULL. Короче, вторая по величине дата при сортировки оказывается в конце списка.
 

zerkms

TDD infected
Команда форума
Keepun
добавляешь IFNULL и получаешь работающий, но ужасный запрос :)
 

Bitterman

Новичок
Keepun
я заюзал GREATEST(), чтобы большая дата была сверху
GREATEST() не отправит большую дату наверх, а отсортирует по максимальной дате в записи. Для того, чтобы бОльшая дата была наверху надо использовать DESC.
Если тебе нужно отсортировать записи по наибольшей или наименьшей дате из всех полей, то тогда понятно и вопросов нет. Но формулировка
Отсортировать запрос по датам из всех полей с типом DATE
для меня несколько странная. Можешь, если несложно, отсортировать эти данные (не в смысле написать запрос, а расположить их руками, так как тебе надо) и объяснить почему так?
id date1 date2
1 2008-12-01 2008-12-05
2 2008-12-03 2008-12-11
3 2008-12-15 2008-12-02
 

Keepun

Новичок
zerkms
идея с IFNULL() прокатила :)
запрос не такой ужасный, да и минимальная нагрузка на сервер позволяет такое юзать...
 
Сверху