Mysql как заказать? - PullRequest
       2

Mysql как заказать?

1 голос
/ 31 августа 2011

Мне нужно заказать следующие строки:
10a
10b
11c
5a
5b
5c
9c

, и результат должен быть:
5a
5b
5c
9c
10a
10b
11c

теперь мой запрос выглядит так:

SELECT klass,id FROM klassid WHERE klass!='' ORDER BY klass ASC

Возможно ли это?

заранее спасибо

1 Ответ

3 голосов
/ 31 августа 2011

Чтобы обеспечить числовое упорядочение, приведите значение к целому числу.Самый простой способ сделать это - поместить его в контекст числового выражения.

Затем, чтобы разрешить связи, упорядочить по исходному строковому значению.

SELECT klass,id FROM klassid WHERE klass!='' 
ORDER BY klass+0 ASC, klass ASC
...