目前2个表
一个是车辆申请的,一个是车辆的 
目前语句是
select ci.CarNum,ci.Driver,ca.UnitName,ca.Carpeople,ca.Starttime,ci.state from qp_CarInfo as ci left join qp_CarApply as ca on ca.CarId = ci.id order by ca.Starttime desc查询出来却是由26条结果,应该是和车辆表里面一样只有23条结果,因为只有23辆车 
车辆申请表中记录的是申请车辆的信息 其中有同一辆车申请过2次或3次 多以导致查询结果有26条现在想去除重复的车牌号码CarNum 只显示最近时间的CarNum 使查询结果只显示23条 

解决方案 »

  1.   


    select ci.CarNum,ci.Driver,ca.UnitName,ca.Carpeople,ca.Starttime,ci.state from qp_CarInfo as ci INNER join qp_CarApply as ca on ca.CarId = ci.id order by ca.Starttime desc
      

  2.   

    inner join 不行 显示结果只有10条 
      

  3.   

    先对车辆申请表按照车辆号码取最新一条,再和车辆表进行INNER JOIN连接。
    你光给这么条代码,数据表结构和部分数据都没,只能这么说了。
      

  4.   

    CarNum  Driver UnitName  Carpeople   Starttime          state
    鲁1111  XXXX     XXXX XXXX 2012-03-01 15:45 1
    鲁XXXX   XXXX     XXXX 管理员 2012-03-01 14:25 0
    鲁2222   XXXX XXXX XXXX 2012-02-23 15:00 1
    鲁XXXX   XXXX XXXX XXXX 2012-02-23 14:31 1
    鲁1111   XXXX XXXX XXXX 02 22 2012  1:20PM 1
    鲁1111   XXXX XXXX XXXX 02 17 2012 10:00AM 1
    鲁XXXX   XXXX XXXX XXXX 02 17 2012  8:48AM 1
    鲁2222 XXXX XXXX XXXX 02 15 2012 10:12AM 0
    鲁XXXX   XXXX XXXX XXXX 02  1 2012  3:26PM 1
    鲁XXXX   XXXX XXXX XXXX 02  1 2012  2:10PM 1
    鲁XXXX   XXXX NULL NULL NULL                 1
    鲁XXXX  XXXX NULL NULL NULL                 1
    鲁XXXX   XXXX NULL NULL NULL                 1
    鲁XXXX  XXXX NULL NULL NULL                 1
    鲁XXXX   XXXX NULL NULL NULL                 1
    鲁XXXX XXXX NULL NULL NULL                 1
    鲁XXXX XXXX NULL NULL NULL                 1
    鲁XXXX XXXX NULL NULL NULL                 1这事查询结果 其中车牌号码CarNUM 中有重复的 所以导致结果是26条数据 现在想去除CarNum中的重复
      

  5.   

    上面的表是那条语句的查询结果 不是原表
    原表字段非常多 
    表一(车辆申请)有用的字段:
    id(车辆申请序号)carID(车辆ID)carNUM(车牌号码) drivers(驾驶员) Carpeople(申请人) UnitName(部门名) 
    表二(车辆表)有用的字段:
    id(车辆)Carnum(车牌号码) driver(驾驶员) state(当前状态)
    其中表一carID=表二id,表一carNum=表二carNum,表一drivers=表二driver
      

  6.   

    我的目的是以车辆表(23条数据)为主
    2个表的查询结果也是23条
    如果车辆申请表中有车辆 就显示使用中 
    没有车辆就显示空
    举例车辆申请中只有一条数据,车辆表中油23条数据
    表一
    id  carID  carNUM drivers Carpeople UnitName 
    1    1      123    222      12      11
    表二
    id  Carnum  driver state
    1    2       23     1
    2    123       33     13    3       44     1
    4 ........................
    希望查询结果为
    carnum  driver  unitname  carpeople  starttime  state
    123      222      11        12         2012       1 
    2        23        NULL      NULL      NULL       1
    2        23        NULL      NULL      NULL       1
    2        23        NULL      NULL      NULL       1
    2        23        NULL      NULL      NULL       1
    2        23        NULL      NULL      NULL       1
    4.............................................................等23条数据
      

  7.   

    select ci.CarNum,ci.Driver,ca.UnitName,ca.Carpeople,ca.Starttime,ci.state from 
    (select CarNum,Driver,UnitName,Carpeople,max(Starttime) Starttime qp_CarApply 
    group by CarNum,Driver,UnitName,Carpeople) ca, qp_CarInfo ci
    where ca.CarId = ci.id 
      

  8.   


    select max(CarNum) CarNum,Drivers,UnitName,Carpeople,Starttime from qp_CarApply  
    group by CarNum,Drivers,UnitName,Carpeople,Starttime
    这样本身就有重复 所以还是不行 换成max(Starttime) 也是一样重复