MySQL IFNULL на 4 или 5 столбцов - PullRequest
1 голос
/ 12 июля 2011

У меня есть заявление:

ORDER BY IFNULL(rrp, wholesale) ASC

... но я хотел знать, есть ли способ получить оператор IFNULL, который проверяет 3, 4 или 5 столбцов? Все из одной таблицы.

Ответы [ 3 ]

4 голосов
/ 12 июля 2011

Использование COALESCE

например:

SELECT ....
  FROM ....
ORDER BY COALESCE(rrp, wholesale, column3, column4)
0 голосов
/ 12 июля 2011

Попробуйте использовать COALESCE; это может дать вам то, что вам нужно.

0 голосов
/ 12 июля 2011

Вы можете связать их в цепочку, так что выражение выбирает first not-null значение из списка столбцов:

ORDER BY IFNULL(IFNULL(IFNULL(rrp, wholesale), some_column), some_other_column) ASC
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...