a.Travel_Number = b.Travel_Number 这两个不是一对一

解决方案 »

  1.   

    那么你的Treval_Sale_Income 和Travel_Group 的关联条件有问题,有重复数据,不是唯一性关联.
    所以翻倍
      

  2.   

    谢谢大家我只是想关联一下Start_Out_Time这个字段啊,因为要根据这个时间来查询的
    那这个问题应该怎么搞,要实现按Start_Out_Time来查询,还有别的办法吗?
      

  3.   

    Travel_Group 中有重复记录
        [align=center]====  ====
    [/align]
      

  4.   

    恩,是我的问题,想省事,Travel_Number中用了一样的,
    谢谢大家~!
      

  5.   

    连接不是一对一,而是一对多.
    a.Travel_Number = b.Travel_Number  
    b表的字段travel_number可能有多个重复值.
      

  6.   

    b 中在2008-5月之间有多条数据。其实只要保证a表中Travel_Number在范围内就行。
    Select (Sum(a.Plan_Income) - Sum(a.Received_Money)) 
    From Treval_Sale_Income as a  
    where Travel_Number IN (select Travel_Number from Travel_Group as b  
    where Year(b.Start_Out_Time)=2008 and Month(b.Start_Out_Time)=5) 
    --优化语句,换成
    --where b.Start_Out_Time> '2008-05-01' and b.Start_Out_Time< '2008-05-31')  
    and a.UserName = 'sale6'