[英]PHP select and group by date (month and year) as well as user
我有一张桌子,上面有这样的信息:
id | staff_id | start_date
1 | 14 | 2015-04-02 00:00:00
2 | 16 | 2015-04-15 00:00:00
3 | 14 | 2015-05-31 00:00:00
4 | 12 | 2015-05-04 00:00:00
我想做的是选择并计算每个工作人员的所有条目,并按月和年对它们进行分组,以便显示如下:
Staff Member | 12 | 14 | 16
2015-04 | 0 | 1 | 1
2015-05 | 1 | 1 | 0
谁能帮我弄清楚如何产生这个吗? 我只是想不出如何为每个工作人员创建一个新列,以及为每个月/年创建一行。
这是一个枢轴查询,但是由于日期原因而有些复杂:
select date_format(start_date, '%Y-%m') as yyyymm,
sum(staff_id = 12) as `12`, sum(staff_id = 14) as `14`,
sum(staff_id = 16) as `16`
from table t
group by yyyymm;
如果您事先不知道职员编号,则需要使用动态SQL。 谷歌“ MySQL动态枢纽”,看看如何做到这一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.