答案比我预想的要容易得多; K.I.S.S适用于此。
,目前正在输出如下初始表结构:
CREATE TABLE #terrDivision
(
RowID INT IDENTITY(1,1),
quartNYear nvarchar (14),
orgType nvarchar(30),
terrName nvarchar(1024),
IncidsInTerr INT,
percentOfTotal FLOAT
)
到percentOfTotal < 1我用这个
SELECT MAX(RowId) AS RowId, quartNYear, orgType, CASE WHEN percentOfTotal < 1.0 THEN 'Misc.' ELSE terrName END AS TerrName,
SUM(IncidsInTerr) AS IncidsInTerr, SUM(percentOfTotal) AS PercentOfTotal
FROM #terrDivision
GROUP BY quartNYear, orgType, CASE WHEN percentOfTotal < 1.0 THEN 'Misc.' ELSE terrName END
ORDER BY quartNYear, orgType, CASE WHEN percentOfTotal < 1.0 THEN 'Misc.' ELSE terrName END
组如果你downvote这个请大家发表意见,为什么让我能从我的错误中学习。 – UbiNoob 2014-09-01 23:53:39
我没有倒下你。以下是一些需要注意的事项 - 给出示例表格和行,您尝试使用的代码,预期的和实际的输出,您遇到的错误等。如果没有这些,通常不可能帮助任何人。它很明显,但很多人不这样做。 – 2014-09-02 00:50:49