2009-07-09 97 views

回答

1

Use ROLLUP這是GROUP BY子句的一部分

+0

這應該附帶一個說明,明確表明消費者的結果將不得不改變。如果你有一個程序需要'COMPUTE'風格的多個結果集,'ROLLUP'不會給你那個。 – 2013-08-22 12:38:49

1

有趣的(儘管這可能是一個錯誤)時,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是否是一個錯誤,或者這意味着它不再是一個建議的前進方向。

+0

如果你看看SQL 2008 COMPUTE鏈接http://msdn.microsoft.com/en-us/library/ms181708.aspx它說ROLLUP – gbn 2009-07-09 17:54:53