按日期和人分组

时间:2015-08-06 12:52:18

标签: mysql

我正在用php / mysql开发一个数据库。

我有一个表'matterjuncactions',其中包含字段 actiondate 多久 STAFFID

当一名工作人员记录一个动作时,它将输入到表格中,记录时间为十进制。

一名工作人员可以在一天内记录任意数量的行动。 (目前有12名工作人员)

我想要做的是有一个页面显示一个表格,左边是日期,另一个是顶部的工作人员ID,每个单元格包含当天花费的时间总和。 (即'howlong'的总和)

类似于:

Date       | Staffid 1 | Staff id2 |
6th August | 3.5 | 2.7 |
5th August | 5.7 | 4.6 |

我可以使用以下方式获得单个工作人员的总数:

SELECT DATE_FORMAT(matterjuncactions.actiondate,'%W-%D') AS fDt
     , SUM(howlong) AS tottime 
  FROM matterjuncactions  
 WHERE staffid=1 
 GROUP  
    BY matterjuncactions.actiondate 
 ORDER 
    BY matterjuncactions.actiondate DESC

我无法弄清楚如何让它显示所有职员的所有数据。

1 个答案:

答案 0 :(得分:0)

试试这个

SELECT DATE_FORMAT(matterjuncactions.actiondate,'%W-%D') AS fDt, 
( select SUM(howlong) from matterjuncactions   AS tottime1 where staffid=1) as total1,
( select SUM(howlong) from matterjuncactions   AS tottime2 where staffid=2) as total2  
FROM matterjuncactions  
GROUP  
BY matterjuncactions.actiondate 
ORDER 
BY matterjuncactions.actiondate DESC

希望有所帮助:)