select count(A.PicName) as PicCount, sum(datediff(ss, B.Begin6, B.End6)) as TimeCount, B.User6 as User6
from TB_Picture A,TB_Batch B where A.BatchName in (Select B.BatchName from TB_Batch B where Convert(char(10),B.End6,120) = '2008-08-23')
and  Convert(char(10),B.End6,120) = '2008-08-23' and B.BatchName = A.BatchName 
Group By B.User6select sum(datediff(ss, Begin6, End6))  from tb_batch where Convert(char(10),End6,120) = '2008-08-23' 
第一个语句查询出来的sum(datediff(ss,B.Begin6,B.End6))的置跟第二个语句查询出来的值不同,
为什么呢?

解决方案 »

  1.   

    沒有 B.BatchName = A.BatchName這個條件,結果當然會不同
      

  2.   

    缺少条件B.BatchName = A.BatchName select sum(datediff(ss, Begin6, End6))  from tb_batch where Convert(char(10),End6,120) = '2008-08-23' where BatchName in (select BatchName from TB_Picture)
      

  3.   

    我要第一个语句查询出来的 TimeCount 能跟第二个语句查询出来的一致应该怎么处理?