У меня есть таблица с тремя полями: "Id, Name, Sequence".
В столбце "Последовательность" имеются следующие записи: 1, 2, 3, 4, 2a, 5, 2b, 2c, 3, 4a (Строка).
Теперь я хочу запросить mysql, который может сортировать следующие значения:
1, 2, 2a, 2b, 2c, 3, 4, 4a, 5.
Я пробовал следующий запрос
SELECT * FROM table_name ORDER BY CAST(sequence AS UNSIGNED) ASC
.
Но это не работает.
Сначала вы хотите заказать по целому числу, а затем упорядочить по подстроке после номера, просто упорядочив всю строку в качестве подтипа:
SELECT * FROM table_name ORDER BY CAST(sequence AS UNSIGNED), sequence;
Вот пример скрипта SQL с примером. Я остановился на ASC
так как по умолчанию.
SELECT * FROM table_name ORDER BY sequence asc
10
перед2
так как полеvarchar
не число.