Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql |如果日期范围匹配,则求和列_Mysql_Database - Fatal编程技术网

mysql |如果日期范围匹配,则求和列

mysql |如果日期范围匹配,则求和列,mysql,database,Mysql,Database,如果列位于特定的日期范围内,并且类型匹配,我想对该列求和 ml_leave_type_id如果匹配,则对总计进行合计,但还要检查它是否在特定范围内,例如11月份 SELECT LA.employee_id, DATEDIFF( LA.approved_to, LA.approved_from ) AS TotalLeavesTaken, LAPP.`entitlement_id`, LAPP.`ml_leave_type_id`, LA.leave_ap

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

ml_leave_type_id如果匹配,则对总计进行合计,但还要检查它是否在特定范围内,例如11月份

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` 

因此,根据pic,我应该获得记录
5
8
12
,总假期为3和5,总计为8,因为那里的
ml\u休假类型\u id
匹配,并且月份匹配,因为它们属于同一年的同一月份。 有第三个和第四个记录的月份匹配,但休假类型id不匹配,或者休假类型id匹配,但月份不匹配,这就是为什么不应该求和的原因


另外,我还需要另一个列,它应该将所有记录的总数加起来,如果只有一年,并且留下匹配的类型。月份不应该算在内。所以应该是12+5+3=20

我不明白问题是什么。@akonsu除了我的专栏之外,我还想要两个专栏
TotaleAveAsInCurrentMonth
TotaleAveAsCorrentyEAR
但需要检查
ml_leave_type_id
是否也匹配。请不要图片,只需适当的DDL(和/或SQLFIDLE)和所需结果