mysql |如果日期范围匹配,则为sum列

时间:2014-12-18 04:27:02

标签: mysql database

如果列位于特定日期范围内并且类型匹配,我想对列进行求和。

ml_leave_type_id如果匹配则将totalleavestaken总和,但也检查它是否位于11月份的特定范围e-g中。

SELECT 
  LA.employee_id,
  DATEDIFF(
    LA.approved_to,
    LA.approved_from
  ) AS TotalLeavesTaken,
  LAPP.`entitlement_id`,
  LAPP.`ml_leave_type_id`,
  LA.leave_application_id,
  LA.approved_from AS LeaveFrom,
  LA.approved_to AS LeaveTo 
FROM
  leave_approval LA 
  INNER JOIN leave_application LAPP 
    ON LAPP.application_id = LA.leave_application_id 
WHERE YEAR(LA.approval_date) = 2014 
  AND LA.`employee_id` = 1 
GROUP BY LA.employee_id,
  LAPP.`ml_leave_type_id` 

enter image description here

所以根据图片,我应该得到记录5812在总的叶子中取3和5将总计达到8 cuz {{1}匹配以及月份匹配,因为它们属于同一年的同一个月。 你有第三和第四条记录,其月份匹配,但是leave_type_id不匹配或者leave_type_id匹配,但是月份不匹配,为什么它不应该总结。

另外,我想要另一列,如果只有年份和leave_type_id匹配,则应该总计所有的总量。月份不应该算在内。所以这将是12 + 5 + 3 = 20

0 个答案:

没有答案