Sql 在特定列中组合具有相同值的行
我正在处理一个查询,但StoryNumber返回为多行 以下是查询: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
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]