我需要使用MS-SQL以日历方式显示每周总数。 在像这样的表中:
Id, auto-increment
WC, text (Departament)
Product, text
StDate, date (Stamp Date)
Completed (T/F)
我可以轻松地创建一个像这样的sumarize:
SELECT T.WC, T.StDate, T.Product, Count(T.Id) AS [Daily-Total]
FROM Table T
WHERE (((T.Completed)=True))
GROUP BY T.WC, T.StDate, T.Product
HAVING (((T.StDate)>=Date()-7 And (T.StDate)<=Date()));
并显示如下内容:
WC StDate Product Daily-Total
Finish 01/01/2017 Prod03 4
Finish 05/01/2017 Prod02 2
Finish 05/02/2017 Prod02 2
Robot 01/01/2017 Prod01 4
Robot 02/01/2017 Prod03 4
Robot 03/01/2017 Prod02 2
Robot 03/02/2017 Prod02 2
Tack 01/01/2017 Prod01 7
Tack 01/01/2017 Prod02 4
Tack 01/01/2017 Prod03 4
Tack 01/01/2017 Prod04 4
但我的老板要我这样表达(数字不真实):
Week10 WC Prod Monday Tuesday Wensday Thrusday Friday Saturday
Tack Prod1 1 0 3 2 0 0
Tack Prod2 0 1 0 1 1 0
Robot Prod2 3 1 2 ...
Finish Prod1 1 4 5 ...
Finish Prod3 3 4...
我需要一些嵌套或顺序选择,但无论哪种方式我找不到一个好的解决方案。
如果有人经历过这个,我很感激任何建议。 提前谢谢。
答案 0 :(得分:0)
使用PIVOT表概念:
$arr[] = 11