在T-sql中分组或旋转我需要任何一种方式的帮助

在T-sql中分组或旋转我需要任何一种方式的帮助,sql,tsql,Sql,Tsql,下午好 好的,我一直在尝试为员工建立一个任务摘要,以下是我得到的: SELECT CONCAT (Mpl.FName,' ',Mpl.SName) AS 'Name', Ctt.TaskName AS 'Task', Cts.Pickset, SUM(omo.Qty) 'Total of tasks', COUNT(Cts.TaskStart) 'Number of Tasks', CAST(SUM(DATEADD(SECOND, DATEDIFF(SECOND, Cts.TaskStart,

下午好

好的,我一直在尝试为员工建立一个任务摘要,以下是我得到的:

SELECT CONCAT (Mpl.FName,' ',Mpl.SName) AS 'Name',
Ctt.TaskName AS 'Task',
Cts.Pickset,
SUM(omo.Qty) 'Total of tasks',
COUNT(Cts.TaskStart) 'Number of Tasks',
CAST(SUM(DATEADD(SECOND, DATEDIFF(SECOND, Cts.TaskStart, Cts.TaskEnd), 0)) AS TIME) AS 'Total Task Time'
FROM CHDS_Management.dbo.People Mpl
LEFT JOIN CHDS_Common.dbo.TaskScan Cts ON Cts.EmpID = Mpl.EmpNo
LEFT JOIN CHDS_Common.dbo.TaskType Ctt ON Ctt.TaskShort = Cts.Task
LEFT JOIN (SELECT picksetno, MAX(PicksetLineNo) AS 'Qty'  FROM CHDS_Common.dbo.OMOrder GROUP BY PicksetNo) omo ON omo.PicksetNo = Cts.Pickset
WHERE Cts.TaskStart >= '2017-06-01 06:00:00'
AND Cts.TaskEnd <= '2017-06-23 02:00:00'
GROUP BY CONCAT (Mpl.FName,' ',Mpl.SName),
ctt.TaskName,
Cts.Pickse
即使我不能得到钻下来,我想得到类似的东西

Justin Pick    100(totel of the 3 tasks) 00:01:03 (time taken for all 3 tasks
Justin Systems 0                         00:00:12

您需要某种类型的报告系统来获得您想要的第一个结果SQL就是不能这样工作。这是第二个结果。我不知道你对“三项任务的总和”的总结,因此你需要提供更详细的答案

SELECT CONCAT (
        Mpl.FName
        ,' '
        ,Mpl.SName
        ) AS 'Name'
    ,Ctt.TaskName AS 'Task'
    ,Cts.Pickset
    ,SUM(/*whatever you are totaling*/) 'Total of tasks'
    ,COUNT(Cts.TaskStart) 'Number of Tasks'
    ,convert(varchar(8), dateadd(second, SUM(DATEDIFF(SECOND, Cts.TaskStart, Cts.TaskEnd)), 0),  108) AS 'Total Task Time'
FROM CHDS_Management.dbo.People Mpl
LEFT JOIN CHDS_Common.dbo.TaskScan Cts ON Cts.EmpID = Mpl.EmpNo
LEFT JOIN CHDS_Common.dbo.TaskType Ctt ON Ctt.TaskShort = Cts.Task
WHERE Cts.TaskStart >= '2017-06-01 06:00:00'
    AND Cts.TaskEnd <= '2017-06-23 02:00:00'
GROUP BY CONCAT (
        Mpl.FName
        ,' '
        ,Mpl.SName
        )
    ,ctt.TaskName
    ,Cts.Pickset

谢谢,但当我在处理该位时删除求和行后,我仍然会遇到以下错误:1操作数数据类型时间对于求和运算符无效。na仍然是相同的错误,我还添加了其他行:谢谢,bud,效果很好。它花了你2次,因为它是星期一早上,它花了我一整天:
SELECT CONCAT (
        Mpl.FName
        ,' '
        ,Mpl.SName
        ) AS 'Name'
    ,Ctt.TaskName AS 'Task'
    ,Cts.Pickset
    ,SUM(/*whatever you are totaling*/) 'Total of tasks'
    ,COUNT(Cts.TaskStart) 'Number of Tasks'
    ,convert(varchar(8), dateadd(second, SUM(DATEDIFF(SECOND, Cts.TaskStart, Cts.TaskEnd)), 0),  108) AS 'Total Task Time'
FROM CHDS_Management.dbo.People Mpl
LEFT JOIN CHDS_Common.dbo.TaskScan Cts ON Cts.EmpID = Mpl.EmpNo
LEFT JOIN CHDS_Common.dbo.TaskType Ctt ON Ctt.TaskShort = Cts.Task
WHERE Cts.TaskStart >= '2017-06-01 06:00:00'
    AND Cts.TaskEnd <= '2017-06-23 02:00:00'
GROUP BY CONCAT (
        Mpl.FName
        ,' '
        ,Mpl.SName
        )
    ,ctt.TaskName
    ,Cts.Pickset