首頁 > 資料庫 > mysql教程 > 如何在 SQL Server 中計算跨列的表行摘要?

如何在 SQL Server 中計算跨列的表行摘要?

Mary-Kate Olsen
發布: 2025-01-04 01:12:39
原創
317 人瀏覽過

How Can I Calculate a Table Row Summary Across Columns in SQL Server?

跨列計算表行摘要

現代資料分析通常需要建立在最後一行包含摘要統計資料的表格。考慮一個表格,其中的行顯示各種類別及其各自的「總銷售額」。您可能想要新增一個額外的行來計算所有類別的總銷售額。

雖然非正統,但以下是在SQL Server 2008 或更高版本中實現此目的的方法:

SELECT
  Type = ISNULL(Type, 'Total'),
  TotalSales = SUM(TotalSales)
FROM atable
GROUP BY ROLLUP(Type)
;
登入後複製

這假設類型列沒有空值,匯總行(總計)由總計值表示。但是,如果存在空值,則使用GROUPING() 函數的更準確表示是:

SELECT
  Type = CASE GROUPING(Type) WHEN 1 THEN 'Total' ELSE Type END,
  TotalSales = SUM(TotalSales)
FROM atable
GROUP BY ROLLUP(Type)
;
登入後複製

利用此方法,您可以有效地將匯總行添加到表中,從而提供一種快速有效的方法計算跨列總計。

以上是如何在 SQL Server 中計算跨列的表行摘要?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板