2017-01-19 3 views
0

У меня есть таблица в базе данных MySQL.Предложение ORDER BY на основе значения - MySQL

Один из столбцов имеет название Failed, а некоторые строки имеют значение Yes.

Как заказать мой запрос SELECT, чтобы он отображал строки, которые не имеют значения сначала, а затем отображаются значения с Yes в качестве значения в конце?

+1

Что вы подразумевали под ценностью? это пустая строка? –

+0

Да, пустая строка. – michaelmcgurk

ответ

2

Просто используйте ASC или DESC при заказе на поле (ов), который вы хотите заказать по. В этом случае попробуйте:

ORDER BY Failed ASC 
+0

Ооооо это хорошо и аккуратно. Спасибо, Том - даст ему вихрь :-) – michaelmcgurk

+0

Кроме того, возможно ли иметь второй ORDER BY, если в 'Failed' не должно быть значений. Как 'id DESC'? – michaelmcgurk

+1

@michaelmcgurk Вы ставите! Просто добавьте поле, подобное этому: order by Failed ASC, id DESC. Просто следуйте за каждым полем запятой. –

2

Использование CASE в Order by

Order by case when col <> 'yes' then 2 else 1 end 
Смежные вопросы