Я не могу отсортировать данные в порядке возрастания, используя ORDER BY ASC - PullRequest
1 голос
/ 20 августа 2010

Запускаемый мной запрос:

select accountid from general order by accountid ASC

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

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

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

Ответы [ 3 ]

11 голосов
/ 20 августа 2010

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

Похоже, прямо сейчас это столбец типа VARCHAR ... который отсортирован как словарь ...

0 голосов
/ 27 января 2014

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

select accountid from general order by convert(int, accountid) ASC
0 голосов
/ 06 июня 2013

Если SolutionID - это столбец VARCHAR и если в нем есть что-то вроде Sol0, Sol1, Sol2, .... тогда, если вам нужно отсортировать столбец ... используйте следующий код

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

...