【发布时间】:2015-02-15 21:01:45
【问题描述】:
好的。这有点复杂..我一直在努力实现它,但到目前为止没有任何进展。
我有三张桌子。 leave_approval leave_applications ml_leave_type
这是 leave_approval 表
然后从 leave_application_id 链接到 leave_application
现在棘手的问题来了, 我想要两个表中的记录。
- 我想要员工在 2014 年的休假总数
- 我想要员工在 2014 年 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
这是我得到的查询结果..
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
更新
我可能无法清楚地解释我的问题。
我想要实现的是添加两个额外的列而不是删除我拥有的列。我的意思是我正在使用我拥有的大多数/所有选择字段
另外,我希望将 2014 年的总叶数放在一个列中,并将该月的总叶数放在该给定年份的不同字段中。
所以这是我想要的例子。>
ml_leave_type_id | Total Leaves Taken in Year (e-g 2014) | Total Leaves taken in Month (e-g November)
1 10 2
2 6 0
3 4 1
【问题讨论】:
-
没有照片谢谢。恰到好处的 DDL!