与MYSQL中的JOIN表的SUM给出了错误的结果

时间:2016-03-28 22:56:49

标签: php mysql join

也许有人真的可以帮助我。我需要一些指导。为什么当我尝试在JOIN表的列中执行SUM时,主表的SUM形式返回错误的结果?假设表A中的总和为6,但有3个记录与表B相连,则结果从6变为18 ......我似乎无法得到它。谢谢

    SELECT SUM(tm_hours) AS total_hours, 
           SUM(drive_time) AS drive_time,
           STR_TO_DATE(CONCAT(YEAR(tm_date),WEEK(tm_date),' Monday'), '%X%V %W') AS weeks 
      FROM `bhds_timecard` 
 LEFT JOIN bhds_mileage 
        ON bhds_timecard.case_no = bhds_mileage.case_no 
     WHERE bhds_timecard.ds_id = '3' AND tm_date BETWEEN '2016-03-16' AND '2016-03-31' 
  GROUP BY CONCAT(YEAR(tm_date), WEEK(tm_date))

输出应该看起来像我修改了查询,但我仍然得到错误的驱动时间。第一周的开车时间应该是55,这是因为它只花了一天的开车时间

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

array