Общие > Базы данных
Хитрая сортировка в запросе
kirillmm:
Молодец, очень прикольно придумал, уважаю.
CGVictor:
ravshaniy
Все было бы так, как ты говоришь , вот только в over9k прикладных задач вес в выдаче сортировки - величина непостоянная.
Т.е. абзац наступает ровно в тот момент, когда тебе нужно реализовать развесовку _и_ для "RB, потом RE, далее N", _и_ для какого-нибудь N-RB-RE.
В общем, автору и решать.
brat02:
да это не легко
pmarkov:
Да, точно проблема, серьезная к тому же.
zuko:
Сорри, что не участвовал в дискуссии - я в отпуске. А тут заглянул через недельку... Спасибо за помощь. Решение проблемы я перед отпуском все-таки нашел в инете.
ORDER BY
CASE field
WHEN \'RBK\' THEN 1
WHEN \'REK\' THEN 2
WHEN \'NEK\' THEN 3
WHEN \'MEK\' THEN 4
ELSE 9999
END
(значения полей вымышленные, не ломайте голову)
Недостаток этого способа в том, что нужно указывать полные значения, я не кусок или начало. Но это не факт, мне такого варианта было достаточно и дальше я не разбирался.
Навигация
Перейти к полной версии