- PVSM.RU - https://www.pvsm.ru -
В базе есть текстовое поле, данные из которого нужно вывести в алфавитном порядке, если данные текстовые, или отсортировать как числа, если данные представляют из себя числа.
Пример требуемой сортировки: 8, 9, 10, 11, 12, Android 2.2, Android 2.3, BlackBerry
Подобная сортировка мне понадобиласть при разработке фильтра товаров для одного движка магазинов [1] (к нему имею отношение, сочтите за рекламу), в котором могут быть как текстовые данные, так и числовые (а иногда и вместе одновременно, как в примере).
Гугл навёл только на какието страшные триггеры и регекспы.
Предлагаю вам предложить своё решение.
Моё решение (выделите текст чтобы подсмотреть):
ORDER BY value=0, -value DESC, value
Автор: pixxxel
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/order-by/2763
Ссылки в тексте:
[1] движка магазинов: http://simplacms.ru
Нажмите здесь для печати.