將查詢結果中的資料列分組 (Visual Database Tools)
適用於:SQL Server
如果您想要建立小計或顯示資料表子集的其他摘要資訊,您可以使用匯總查詢來建立群組。 每個群組摘要說明數據表中具有相同值之所有數據列的數據。
例如,您可能會想要在 titles
數據表中看到書籍的平均價格,但按發行者細分結果。 若要這樣做,您可以依發行者將查詢分組(例如,pub_id
)。 產生的查詢輸出可能如下所示:
當您將資料分組時,只能顯示摘要或分組資料,例如:
群組欄位的值(出現在 GROUP BY 子句中的那些值)。 在上述範例中,
pub_id
是群組欄位。由 SUM() 和 AVG( 等聚合函數所產生的值。 在上述範例中,第二個數據行是使用AVG() 函式搭配
price
數據行所產生。
您無法顯示個別資料列的值。 例如,如果您只依發行者分組,則也無法在查詢中顯示個別標題。 因此,如果您將欄位新增到查詢結果中,查詢與檢視設計器 會自動將這些欄位新增到 SQL 窗格的語句中的 GROUP BY 子句中。 如果您想要將一個欄位進行匯總,您可以為該欄位指定一個聚合函數。
如果您依多個數據行分組,查詢中的每個群組都會顯示所有群組數據行的匯總值。
例如,對 titles
數據表的下列查詢按發行者(pub_id
)和書籍類型(type
)進行分組。 查詢結果會依發行者排序,並針對發行者產生的每種不同類型的書籍顯示摘要資訊:
SELECT pub_id, type, SUM(price) Total_price
FROM titles
GROUP BY pub_id, type
產生的輸出可能如下所示:
若要將數據列分組
將您想要摘要的數據表新增至 [圖表] 窗格,以啟動查詢。
以滑鼠右鍵單擊 [圖表] 窗格的背景,然後從快捷功能表選擇 [新增群組依據]。 查詢和檢視表設計工具會將 群組依據 數據行新增至 [準則] 窗格中的方格。
將您想要分組的欄新增至 [準則] 窗格。 如果您希望資料行呈現在查詢結果中,請選取 輸出 資料行以供輸出。
查詢和檢視表設計工具會將 GROUP BY 子句新增至 SQL 窗格中的 語句。 例如,SQL 語句看起來可能像這樣:
SELECT pub_id FROM titles GROUP BY pub_id
將您想要匯總的欄位新增至 [準則] 窗格。 請確定資料列已標示為輸出。
在將要匯總的欄位的 [群組依據] 網格格子中,選取適當的聚合函數。
查詢和檢視設計工具會自動將數據行別名指派給您要摘要的數據行。 您可以將這個自動產生的別名取代為更有意義的別名。 如需詳細資訊,請參閱 建立資料行別名。
SQL 窗格中的對應語句看起來可能像這樣:
SELECT pub_id, SUM(price) AS Totalprice FROM titles GROUP BY pub_id