使用不同的分解查询调优

时间:2015-06-05 23:01:21

标签: sql sql-server tsql group-by

我是否有可能在一个查询中减少查询数量并实现以下不同的分解?访问的表很大,包含数百万条记录。所以我尝试优化查询,这样我就不必多次访问同一个表了!

1 个答案:

答案 0 :(得分:1)

看起来你想要rollup或分组。我认为这可能接近你正在寻找的东西:

SELECT 'Chicago' AS Region, District, SchoolName AS School, Category ,
       COUNT(DISTINCT ssid) AS Total ,
       SUM(DirectEnroll) AS Met
FROM final.NSC_Analysis
WHERE  GradYear = 2013
GROUP BY Category, Schoolname, District WITH rollup;

不幸的是,这对于2008之前的SQL Server中的count(distinct)并不适用。