Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 在特定列中组合具有相同值的行_Sql_Sql Server - Fatal编程技术网

Sql 在特定列中组合具有相同值的行

Sql 在特定列中组合具有相同值的行,sql,sql-server,Sql,Sql Server,我正在处理一个查询,但StoryNumber返回为多行 以下是查询: SELECT STY.[Number] StoryNumber ,ISNULL(SUM(DTH.[Hours]), 0) AS WorkHours ,MAX(CASE WHEN DTH.Hours != 0 THEN DTH.ActivityDate END) AS LatestActivityDate FROM Tas

我正在处理一个查询,但StoryNumber返回为多行

以下是查询:

SELECT 
    STY.[Number] StoryNumber
    ,ISNULL(SUM(DTH.[Hours]), 0) AS WorkHours
    ,MAX(CASE 
            WHEN DTH.Hours != 0
                THEN DTH.ActivityDate
            END) AS LatestActivityDate
FROM Task TSK
LEFT JOIN DailyTaskHours DTH ON TSK.PK_Task = DTH.TaskId
LEFT JOIN Story STY ON TSK.StoryId = STY.PK_Story
LEFT JOIN Sprint SPT ON STY.SprintId = SPT.PK_Sprint
LEFT JOIN Product PDT ON STY.ProductId = PDT.PK_Product
GROUP BY LEN(STY.[Number])
    ,STY.[Number]
    ,TSK.[Name]
这个查询实际上被简化了,并且所有的连接条件都是必需的

这是上述查询的输出:


当有多个字段(如OHC-1总和工时)时,我如何组合像StoryNumber这样的字段,并找到最高的activitydate?

通过删除
组中的无关字段:

SELECT STY.[Number] StoryNumber
      ,ISNULL(SUM(DTH.[Hours]), 0) AS WorkHours
      ,MAX(CASE WHEN DTH.Hours != 0
                THEN DTH.ActivityDate
           END) AS LatestActivityDate
FROM Task TSK
LEFT JOIN DailyTaskHours DTH ON TSK.PK_Task = DTH.TaskId
LEFT JOIN Story STY ON TSK.StoryId = STY.PK_Story
LEFT JOIN Sprint SPT ON STY.SprintId = SPT.PK_Sprint
LEFT JOIN Product PDT ON STY.ProductId = PDT.PK_Product
LEFT JOIN [User] USR ON TSK.PointPerson = USR.DisplayName
GROUP BY STY.[Number]