Я не могу отсортировать данные в порядке возрастания, используя заказ ASC

StackOverflow https://stackoverflow.com/questions/3527977

Вопрос

Запрос, который я бегу, это

select accountid from general order by accountid ASC

Результат, который я получаю, это

accountid
------------
1 
1001 
1002
10021 
10026
1006 
1007

Почему это не заказывает правильно? Это простой запрос, и я полностью потерян в том, как я могу решить этот вопрос.

Это было полезно?

Решение

Тип столбца должен быть числовым (int, number, bigint, и т. Д.) Тип ..

Похоже, сейчас это VARCHAR Тип колонна ... Что отсортировано как словарь ...

Другие советы

Если ConirectiDID является столбец VARCHAR, и если у него есть что-то так, как SOL0, SOL1, SOL2, .... Тогда, если вы должны сортировать столбец ... Используйте код ниже

cast (substring(SolutionID,4,10) as integer) desc

Попробуйте это, это работает:

select accountid from general order by convert(int, accountid) ASC
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top