我有一个表   其中一个字段是字符串类型   其值如:12,1354,1或1,12,1234或14435,35234,2或123,4543,43
现在我想写三条条件排序SQL语句,
第一条  按照第一个逗号前的数字进行排序
第二条  按照两个逗号之间的数字进行排序
第三条  按照最后一个逗号之后的数字进行排序请问这三条排序语句怎么写?谢谢了
 

解决方案 »

  1.   

    用charindex(),Substring(),分别截取出来,再转换成数字类型排序
      

  2.   


    declare @t table
    (
    col varchar(100)
    )insert @t select '12,1354,1'
    union all
    select '1,12,1234'
    union all
    select '14435,35234,2'select
    *
    from @t
    order by convert(int,parsename(replace(col,',','.'),3))
    select
    *
    from @t
    order by convert(int,parsename(replace(col,',','.'),2))
    select
    *
    from @t
    order by convert(int,parsename(replace(col,',','.'),1))
    请不要给我分。