我正在运行查询,结果显示下表
http://i.imgur.com/98u4ofl.jpg
关于此输出,我想知道最简单的方法是做什么: 1)将每个季度的行分组,其中真正的小百分比加起来为Misc。然后删除从表中分组的行 2)连接orgType和terrName列以获得一列
我正在考虑创建另一个临时表的路径并将数据插入到这些行中,直到达到特定的总和,然后只插入Misc。除了差异,但我认为这个解决方案很混乱,可能会出错。
答案 0 :(得分:0)
答案比我想象的容易得多; 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