Я хочу создать динамический порядок по выражению.ORDER BY с предложением CASE
Его цель - прочитать таблицу ежедневных переопределений (от 0 до * записей) и принять решение об использовании глобального переопределения или переопределения магазина для выбранного дня.
Я думал о том, чтобы использовать аргумент case, как показано ниже, но он не работает должным образом.
select * from schedule sdl
where day = 3
and (sdl.store_id = 23331 or sdl.store_id is null)
order by
case when sdl.force is true
then 'sdl.store_id nulls first'
else 'sdl.store_id nulls last'
end
limit 1
Возможно ли создать заявление-заявление с использованием заявления о случаях? Или, может быть, есть лучший подход к этому вопросу.
Я думаю, что кто-то ответил на этот вопрос: http://stackoverflow.com/questions/10645131/sql-case-statement-in-order-by- статья – IHTS