我有一个SELECT
包含CASE
表达式的查询。我有一个带有文本“GrandTotalGroupTotal”的“总计”列。第二列包含文本“GrandTotalGroup”。为了对“GrandTotalGroup”列中的行求和并放入“GrandTotalGroupTotal”行,我在 CASE 语句中识别正确的行,如下所示。
我需要从列值中截断最后一个“总计”。此 SELECT 语句有效。如果可能,我想删除硬编码值GrandTotalGroup。
SELECT SUG3.LineOrder AS SNo,
CASE WHEN (Visits IS NULL)
THEN (SELECT SUM(ISNULL(CTE3.Visits, 0))
FROM CTE3
WHERE CTE3.GroupSetName = 'GrandTotalGroup')
ELSE ISNULL(Visits, 0) END AS Visits
FROM UDSStaffUtilizationGroups SUG3
LEFT OUTER JOIN CTE3 ON CTE3.UDSStaffGroupID = SUG3.UDSStaffGroupID
GROUP BY SUG3.LineOrder, SUG3.GroupSetName, SUG3.GroupTotalName, CTE3.Visits
有没有办法使用字符串函数来改变: GrandTotalGroupTotal到GrandTotalGroup