Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как правильно записать условие выборки? / 7 сообщений из 7, страница 1 из 1
18.03.2016, 13:48
    #39195355
LiYing
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
Подскажите, пожалуйста, как написать условие в WHERE?
Имеется три поля-даты в таблице: date1, date2, date3. date2 может быть NULL.
Нужно выбрать записи у которых date1 < date2, а если date2=NULL, то по условию date1 < date3.
Что-то типа такого:
Код: sql
1.
WHERE IF(date2 IS NULL, date1 < date3, date1 < date2)
...
Рейтинг: 0 / 0
18.03.2016, 13:58
    #39195368
Как правильно записать условие выборки?
Код: plsql
1.
WHERE (date2 is not null and date1 < date2) or (date2 is null and date1 < date3)
...
Рейтинг: 0 / 0
18.03.2016, 14:04
    #39195373
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
WHERE date1 < COALESCE(date2, date3)
...
Рейтинг: 0 / 0
18.03.2016, 14:05
    #39195374
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
Впрочем, это трындец использованию индексов. Возможно, разумнее
Код: sql
1.
2.
3.
4.
5.
SELECT ...
WHERE date1 < date2
UNION ALL
SELECT ...
WHERE date1 < date3 AND date2 IS NULL
...
Рейтинг: 0 / 0
18.03.2016, 14:12
    #39195381
LiYing
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
Akina,
Спасибо! А что значит "трындец использованию индексов" - индексы порушатся? О_о
...
Рейтинг: 0 / 0
18.03.2016, 14:26
    #39195419
LiYing
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
А, вероятно, Вы имели в виду, что индекс использоваться не будет в этой функции.
...
Рейтинг: 0 / 0
18.03.2016, 14:35
    #39195431
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно записать условие выборки?
LiYingА, вероятно, Вы имели в виду, что индекс использоваться не будет в этой функции.

Да, именно это имелось в виду.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как правильно записать условие выборки? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]