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

posted @ 2014-04-17 14:34  X.Y  阅读(1839)  评论(0编辑  收藏  举报