SQL - 按a1,a2,a3,a4 ... a101的顺序排序

时间:2016-10-06 10:43:56

标签: mysql sql

我是SQL的新手,遇到了困难。

如果我有一列A1,A2,A3 ...... A1000

当我按此栏目订购时,它显示为A1,A100,A2 ......我得到了逻辑原因。

ATTEMPT:order by left(length(company.company_code),-1) ASC;

我试图上面试图切掉A但没有运气?

有什么建议吗?

1 个答案:

答案 0 :(得分:5)

这是一个简单的方法:

order by length(company.company_code), company.company_code

首先按字符串的长度排序,然后按字符串的其余部分排序。

您也可以这样做:

order by cast(substr(company.company_code, 2, 10) as int)

这假定在一个字母之后不超过9位数。