Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

MySQL - sort by 2 fields

1.8K
21 сентября 2005 года
civ3
68 / / 21.07.2003
Привет
Вопрос такой:
В базе есть два поля date_added и date_released,
можно ли при запросе отсортировать сразу по двум полям, т.е. если date_added > date_released , то сортировка для данной записи будет по date_added, а если date_added < date_released, то, соответственно, сортировка для этой записи будет по date_released.

Фух...я понятно выражаюсь? :)
Спасибо.
513
21 сентября 2005 года
Yurec
228 / / 21.09.2005
Я думаю что это невозможно в MySQL. Можно было бы попробовать с вложенным подзапросом и оператором CASE, но в MySQL они помоему не поддерживаются. Как вариант либо создать временную таблицу с полем, которое будет содержать максимальное из этих полей либо ввести в таблицу ещё одно поле, которое будет содержать max между date_added и date_released. Не очень красиво..... Но вариантов я боюсь в MySql просто нет :{ .
513
21 сентября 2005 года
Yurec
228 / / 21.09.2005
Хотя нет всё таки возможно так:
SELECT date_added,date_released, (date_added -date_released) as r FROM `our_table` order by r
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог