我一直在研究使用compute by子句對avg和sum運算符進行的查詢。 作爲微軟宣稱這將是一個停產的功能,會是怎樣的替代此功能在t-sql中替換compute by子句
回答
Use ROLLUP這是GROUP BY子句的一部分
有趣的(儘管這可能是一個錯誤)時,SQL Server 2005 documentation說
COMPUTE和COMPUTE BY子句爲 提供了向後兼容性。 相反,使用以下組件:
SQL Server 2005分析服務 (SSAS)與OLE DB的分析 服務或Microsoft ActiveX數據對象 多維(ADO MD)。有關 的更多信息,請參閱分析 服務數據訪問接口 (SSAS)。
ROLLUP運算符。有關更多 信息,請參閱總結數據 使用ROLLUP。
但(稍後)SQL Server 2008 documentation只是說
的COMPUTE和COMPUTE BY子句 提供用於向後兼容性。 相反,使用以下組件:
SQL Server 2005分析服務 (SSAS)與OLE DB的分析 服務或Microsoft ActiveX數據對象 多維(ADO MD)。有關 的更多信息,請參閱分析 服務數據訪問接口 (Analysis Services - 多維 數據)。
我不知道在後者中遺漏ROLLUP是否是一個錯誤,或者這意味着它不再是一個建議的前進方向。
如果你看看SQL 2008 COMPUTE鏈接http://msdn.microsoft.com/en-us/library/ms181708.aspx它說ROLLUP – gbn 2009-07-09 17:54:53
- 1. TSQL ORDER BY子句幾個
- 2. TSQL錯誤By子句
- 3. 變體使用GROUP BY子句中TSQL
- 4. 如何使用sql中的group by子句替換字符串?
- 5. ORDER BY在GROUP BY子句
- 6. 替換爲TSql
- 7. TSQL Where子句
- 8. sed替換句子
- 9. tsql:如何做一個子串替換?
- 10. TSQL - 聚集在HAVING子句
- 11. 選擇在where子句TSQL
- 12. by子句
- 13. by子句
- 14. by子句
- 15. by子句
- 16. 將句子替換爲句子
- 17. by子句
- 18. only_full_group_by: 「ORDER BY子句是不是在GROUP BY子句」
- 19. T-SQL:WHERE子句中OVER(PARTITION BY ... ORDER BY ...)
- 20. TSQL替換使用子串替換替換字符串的其他部分
- 21. SQL替換WHERE子句
- 22. Tsql group by clause
- 23. TSQL Group By Query
- 24. TSQL OVER(PARTITION BY ...)
- 25. ORDER BY子句中的MySQL
- 26. GROUP BY子句中的MySQL
- 27. X ++中的group by子句
- 28. LINQ中的group by子句
- 29. GROUP BY在UPDATE FROM子句
- 30. ORDER BY在SQL子句
這應該附帶一個說明,明確表明消費者的結果將不得不改變。如果你有一個程序需要'COMPUTE'風格的多個結果集,'ROLLUP'不會給你那個。 – 2013-08-22 12:38:49