按照每句话开头的数字排序

3、发生路风不良反映或服务质量严重问题。
1、发生责任D类一般事故以上。
2、发生责任火灾爆炸食物中毒事故以上。
4、发生责任路外伤亡事故。
5、发生责任旅客伤亡职工轻伤以上事故。
6、发生责任汽车交通事故损失1万元以上。
7、责任区发生行车概况。
8、责任区发生事故苗子及火情。
9、责任区发生责任晚点。
10、责任区发生责任投诉。
11、责任区发生举报但未构成行车事故的严重违章违纪。
12、路局安监系统、上级主管检查本部门或责任区发现的问题。
想按照第一个数字进行排序

解决方案 »

  1.   

    select * from order by convert(int,left(colname,charindex('、',colname)-1))
      

  2.   


    declare @t table (col varchar(55))
    insert into @t
    select '3、发生路风不良反映或服务质量严重问题.' union all
    select '1、发生责任D类一般事故以上.' union all
    select '2、发生责任火灾爆炸食物中毒事故以上.' union all
    select '4、发生责任路外伤亡事故.' union all
    select '5、发生责任旅客伤亡职工轻伤以上事故.' union all
    select '6、发生责任汽车交通事故损失1万元以上.' union all
    select '7、责任区发生行车概况.' union all
    select '8、责任区发生事故苗子及火情.' union all
    select '9、责任区发生责任晚点.' union all
    select '10、责任区发生责任投诉.' union all
    select '11、责任区发生举报但未构成行车事故的严重违章违纪.' union all
    select '12、路局安监系统、上级主管检查本部门或责任区发现的问题.'select * from @t
    order by substring(col,1,charindex('、',col)-1)+0
    /*
    col
    -------------------------------------------------------
    1、发生责任D类一般事故以上.
    2、发生责任火灾爆炸食物中毒事故以上.
    3、发生路风不良反映或服务质量严重问题.
    4、发生责任路外伤亡事故.
    5、发生责任旅客伤亡职工轻伤以上事故.
    6、发生责任汽车交通事故损失1万元以上.
    7、责任区发生行车概况.
    8、责任区发生事故苗子及火情.
    9、责任区发生责任晚点.
    10、责任区发生责任投诉.
    11、责任区发生举报但未构成行车事故的严重违章违纪.
    12、路局安监系统、上级主管检查本部门或责任区发现的问题.
    */
      

  3.   

    create table ls(name varchar(100))
    insert ls
    select '3、发生路风不良反映或服务质量严重问题。' union
    select '1、发生责任D类一般事故以上。' union
    select '2、发生责任火灾爆炸食物中毒事故以上。' union
    select '4、发生责任路外伤亡事故。' union
    select '5、发生责任旅客伤亡职工轻伤以上事故。' union
    select '6、发生责任汽车交通事故损失1万元以上。' union
    select '7、责任区发生行车概况。' union
    select '8、责任区发生事故苗子及火情。' union
    select '9、责任区发生责任晚点。' union
    select '10、责任区发生责任投诉。' union
    select '11、责任区发生举报但未构成行车事故的严重违章违纪。' union
    select '12、路局安监系统、上级主管检查本部门或责任区发现的问题。'select * from ls order by cast (left(name,charindex('、',name)-1) as int)/*
    name                                                                                                 
    ---------------------------------------------------------------------------------------------------- 
    1、发生责任D类一般事故以上。
    2、发生责任火灾爆炸食物中毒事故以上。
    3、发生路风不良反映或服务质量严重问题。
    4、发生责任路外伤亡事故。
    5、发生责任旅客伤亡职工轻伤以上事故。
    6、发生责任汽车交通事故损失1万元以上。
    7、责任区发生行车概况。
    8、责任区发生事故苗子及火情。
    9、责任区发生责任晚点。
    10、责任区发生责任投诉。
    11、责任区发生举报但未构成行车事故的严重违章违纪。
    12、路局安监系统、上级主管检查本部门或责任区发现的问题。(所影响的行数为 12 行)
    */