二进制中的SQL Server订单列

时间:2018-12-03 09:42:59

标签: sql sql-server tsql

我有一列包含值:

2018/12/03 12:21:44 - redis_check - ERROR (version 7.0.0.0-25, build 1 from 2016-11-05 15.35.36 by buildguy) : Step [Redis Output.0] failed to initialize!

我想对它进行排序:

col1    
--------
123455
123456
0123456
123457
123458

我应该使用哪个搭配订购?如果有字母值,它将是:

 123455
 123456
 123457
 123458
0123456

2 个答案:

答案 0 :(得分:1)

您可以通过len进行排序,后跟列本身:

SELECT col1
FROM TableName
ORDER BY LEN(col1), Col1

答案 1 :(得分:0)

假设实际数据的格式与前导零相同,则可以执行以下操作:

order by case when left(col,1) = 0 then 1 else 0 end, col