select door.policeid, door.doorid, jwh.jwhname, history.czzt 
from door, jwh, history
where left(door.doorid,2)=jwh.duanid and history.zdz=door.policeid+'|'+door.doorid

解决方案 »

  1.   

    door.doorid=jwh.duanid+'%'
    这个是干什么的?
    如果是模糊查询就要改成
    door.doorid like jwh.duanid+'%'
      

  2.   

    改成这个试试select door.policeid, door.doorid, jwh.jwhname, history.czzt 
    from door, jwh, history
    where door.doorid like jwh.duanid + '%' and history.zdz=door.policeid+'|'+door.doorid
      

  3.   

    是like,发贴的时候发错了!按weixy()的方法,可以了!不过,我用了left、right方法来处理history.zdz=door.policeid+'|'+door.doorid,即:
    door.policeid=left(history,6) and door.doorid=right(history,5)
    但right方法好像不是很正常,有部分数据取不到,不知道是什么原因。
    weixy知道的话,再帮我一下好吗。谢谢先!
      

  4.   

    door.policeid=left(history,6) and door.doorid=right(history,5)
    应是door.policeid=left(history.zdz,6) and door.doorid=right(history.zdz,5)还有history.zdz右边是否有空格;(右边有空格用:Rtrim(right(history.zdz,5)))door.policeid是否一定是6位;door.doorid是否一定是5位;
      

  5.   

    door.doorid=right(history.zdz,5) 看你的history.zdz后边是不是有空格,字段类型是不是char型。如果是要用RTRIM(history.zdz)去掉空格