问题是这样的,可能我讲的不是很清楚
在表里有一字段DM,它存放的是各单位的代码,代码共9位,前两位代表地区,后三位代表专业,中间4位代表单位。我现在用query做查询,并按指定的顺序读出。
例如,我首先按地区排序,那么我就需要按dm字段中的值的前两位排序。还有我要读出某一专业的所有单位,那我的查询条件就是dm的后3位是***.另外中间4位中的没一位也可能做为查询条件。请问我该怎么实现,或sql语句怎么写。

解决方案 »

  1.   

    前两位代表地区    where substring(DM,1,2) = '地区'
    后三位代表专业    where substring(DM,7,3) = '专业'
    中间4位代表单位   where substring(DM,3,4) = '单位'
      

  2.   

    select * from table where dm like &&zzz&&&&delphi 里的单字通配符是什么了?我忘了,只好以 & 代替。
      

  3.   

    %代表任意字符,单个字符的我忘了,好像是?还是#用like字句不太保险
      

  4.   

    你使用的是什么数据库系统
    Oracle,SQLServer,Access,Paradox还是其他
    Weilibo(烈火精灵) 方法只有在Sql Server中能够使用
      

  5.   

    where substring(DM,1,2) = '地区'
      

  6.   

    select * from employees order by substring(LastName, 1 ,2)
      

  7.   

    前两位代表地区    where substring(DM,1,2) = '地区'
    后三位代表专业    where substring(DM,7,3) = '专业'
    中间4位代表单位   where substring(DM,3,4) = '单位'
      

  8.   

    select * from table where substring(DM,7,3) = '专业' order by substring(DM,1,2)