sql server 字母和数字 符号混合排序问题

目前有个字段如下:希望写一个排序第二个‘-’左边的按照字符串排序,右边的按照数字排序

档案号
B10-1-40
B10-1-5
B10-1-6
B10-1-7

实现sql格式如下:

select * from tablename order by
left(档案号,charindex('-',档案号,charindex('-',档案号)+1)-1),
convert(int,substring(档案号,charindex('-',档案号,charindex('-',档案号)+1)+1,10))

 

来源:http://zhidao.baidu.com/link?url=Dc0vTh3nHH7TPqaseGs4YG_IumYaf6xH4xNIjuP3JTS_KU8_usvZMGxcQnh5kJJR68McOb6qWop7jjH9IuvI7q

转载于:https://www.cnblogs.com/blog4xy/p/3670699.html

你可能感兴趣的:(sql server 字母和数字 符号混合排序问题)