字符串的长度和子串的长度及位置都是确定的,比如
Q001
Q003
Q005
T002
T004
我怎么把它排序成
Q001
T002
Q003
T004
Q005
即不去管第一位字母,光按照最后的四位数字进行排序

解决方案 »

  1.   

    order by right(字段名,3)这样也可以???晕,sql语句可以执行delphi的函数?
      

  2.   

    RIGHT
    返回字符串中从右边开始指定个数的 integer_expression 字符。
    是SQL内建的函数,alexzhang00(三角猫(sjcatsoft)) IS OK
      

  3.   

    select *  from 表名 order by SUBSTRING(字段名,2,len(字段名))
      

  4.   

    substring是标准函数吗,我用的是access,执行的时候出错了
      

  5.   

    刚查了access 里面没有substring
    sql.Add('select *  from 表名order by right(字段名,len(字段名)-1)' ) ;
      

  6.   

    我开始写的是MS SQL里面的
    后面的可通用
      

  7.   

    right()是取右边的数,但如果是要取中间的数排序呢,左边和右边都有不要排序的字符时该用什么函数了,哪里能查access支持的SQL函数
      

  8.   

    我用sqlserver,用left和right多取几次,肯定可以的。
      

  9.   

    在sqlserver可以用SubString函数,或者left和right
    access 中 RIGHT和 left
    --------
    access帮助里面有 工作表函数(我用的繁体的是这样,不知道简体的叫什么)
      

  10.   

    在sqlserver可以用SubString函数,或者left和right
    access 中 RIGHT和 left
    --------
    access帮助里面有 工作表函数(我用的繁体的是这样,不知道简体的叫什么)