本文將說明如何使用 Access 中的彙總函數來加總查詢結果集中的資料。 此外,也會簡要說明如何使用其他彙總函數,例如 COUNT 和 AVG,來計算結果集中的值或計算平均值。 此外,它說明如何使用 [合計] 列來加總資料,而不變更查詢的設計。
您想要做什麼?
了解加總資料的方式
您可以使用稱為彙總函數的函數類型,來加總查詢中的數字欄。 彙總函數會在一欄資料上執行計算,並傳回單一值。 Access 提供多種彙總函數,包括 Sum、 Count (Avg 用於計算平均值) 、 Min和 Max。 您可以藉由 Sum 將函數新增至查詢來加總資料。 您可以使用 Count 函數計算資料等等。
此外,Access 提供數種在查詢中新增 Sum 和其他彙總函數的方法。 您可以:
- 在 [資料工作表檢視] 中開啟查詢,然後新增 [合計] 資料列。 Access 中的一項功能 [合計] 列可讓您在查詢結果集的一欄或多欄中使用彙總函數,而不變更查詢的設計。
- 建立合計查詢。 合計查詢會計算記錄群組的小計;[合計] 列會針對一或多個資料行 (欄位) 計算總計。 例如,如果您想要依城市或季小計所有銷售量,您可以使用合計查詢來依所需類別將記錄分組,然後加總銷售數字。
- 建立交叉資料表查詢。 交叉資料表查詢是一種特殊類型的查詢,其結果會顯示在類似於 Excel 工作表的方格中。 交叉資料表查詢會摘要您的值,然後依兩組事實來分組這些值 — 一組設定在) 的側 (列標題,另一組則設定在前 (欄標題) 。 例如,您可以使用交叉資料表查詢來顯示每個城市過去三年的銷售總額,如下表所示:
| 城市 | 2003 | 2004 | 2005 |
|---|---|---|---|
| 巴黎 | 254,556 | 372,455 | 467,892 |
| 雪梨 | 478,021 | 372,987 | 276,399 |
| Jakarta | 572,997 | 684,374 | 792,571 |
| ... | ... | ... | ... |
注意
本文件中的操作說明章節強調 Sum 使用函數,但您也可以在 [合計] 資料列和查詢中使用其他彙總函數。 如需詳細資訊,請參閱本文稍後的 彙總函數參考 資料。
如需使用其他彙總函數方式的詳細資訊,請參閱在 資料工作表中顯示欄總計一文。
下列各節中的步驟將說明如何新增 [合計] 資料列、使用合計查詢來加總跨群組的資料,以及如何使用交叉資料表查詢來小計跨群組和時間間隔的資料。 繼續進行時,請記住,許多彙總函數只能處理設定為特定資料類型的欄位中的資料。 例如,函數 SUM 僅適用於設定為 [數字]、[小數] 或 [貨幣] 資料類型的欄位。 如需每個函數所需資料類型的詳細資訊,請參閱本文稍後的 彙總函數參考 。
如需有關資料類型的一般資訊,請參閱 修改或變更欄位的資料類型集一文。
準備一些範例資料
本文中的操作說明章節提供範例資料表。 操作說明步驟會使用範例資料表,以協助您瞭解彙總函數的運作方式。 如果您想要的話,您可以選擇性地將範例資料表新增至新的或現有的資料庫。
Access 提供數種將這些範例資料表新增至資料庫的方法。 您可以手動輸入資料,也可以將每個表格複製到 Excel 等試算表程式,然後將工作表匯入 Access,或是將資料貼到記事本等文字編輯器,然後從產生的文字檔匯入資料。
本節中的步驟說明如何在空白資料工作表中手動輸入資料,以及如何將範例資料表複製到試算表程式,然後將這些資料表匯入 Access。 如需建立和匯入文字資料的詳細資訊,請參閱匯 入或連結至文字檔中的資料一文。
本文中的操作說明步驟使用下表。 使用這些資料表建立範例資料:
[ 類別] 資料表:
| 類別 |
|---|
| 娃娃 |
| 遊戲和拼圖 |
| 美術和框架 |
| 電玩遊戲 |
| DVD 和電影 |
| 模特兒和愛好 |
| 運動 |
[ 產品 ] 資料表:
| 產品名稱 | 價格 | 類別 |
|---|---|---|
| 程式設計師動作玩偶 | $12.95 | 娃娃 |
| 享受 C# (適合全家人) 的桌遊 | $15.85 | 遊戲和拼圖 |
| 關聯式資料庫圖表 | $22.50 | 美術和框架 |
| 神奇的電腦晶片 (500 個) | $32.65 | 遊戲和拼圖 |
| 存取! 遊戲! | $22.95 | 遊戲和拼圖 |
| 電腦極客與神話生物 | $78.50 | 電玩遊戲 |
| 計算機極客的練習! The DVD! | $14.88 | DVD 和電影 |
| 終極飛翔披薩 | $36.75 | 運動 |
| 外接式 5.25 吋軟碟機 (1/4 縮放) | $65.00 | 模特兒和愛好 |
| 官僚非動作人物 | $78.88 | 娃娃 |
| 陰鬱 | $53.33 | 電玩遊戲 |
| 建立您自己的鍵盤 | $77.95 | 模特兒和愛好 |
[ 訂單] 資料表:
| 訂單日期 | 出貨日期 | 船舶城市 | 運費 |
|---|---|---|---|
| 11/14/2005 | 11/15/2005 | Jakarta | $55.00 |
| 11/14/2005 | 11/15/2005 | 雪梨 | $76.00 |
| 11/16/2005 | 11/17/2005 | 雪梨 | $87.00 |
| 11/17/2005 | 11/18/2005 | Jakarta | $43.00 |
| 11/17/2005 | 11/18/2005 | 巴黎 | $105.00 |
| 11/17/2005 | 11/18/2005 | 斯圖加特 | $112.00 |
| 11/18/2005 | 11/19/2005 | 維也納 | $215.00 |
| 11/19/2005 | 11/20/2005 | 邁阿密 | $525.00 |
| 11/20/2005 | 11/21/2005 | 維也納 | $198.00 |
| 11/20/2005 | 11/21/2005 | 巴黎 | $187.00 |
| 11/21/2005 | 11/22/2005 | 雪梨 | $81.00 |
| 11/23/2005 | 11/24/2005 | Jakarta | $92.00 |
[ 訂單詳細資料] 資料表:
| 訂單識別碼 | 產品名稱 | 產品 ID | 單價 | 數量 | Discount |
|---|---|---|---|---|---|
| 1 | 建立您自己的鍵盤 | 12 | $77.95 | 9 | 5% |
| 1 | 官僚非動作人物 | 2 | $78.88 | 4 | 7.5% |
| 2 | 計算機極客的練習! The DVD! | 7 | $14.88 | 6 | 4% |
| 2 | 神奇的電腦晶片 | 4 | $32.65 | 8 | 0 |
| 2 | 電腦極客與神話生物 | 6 | $78.50 | 4 | 0 |
| 3 | 存取! 遊戲! | 5 | $22.95 | 5 | 15% |
| 4 | 程式設計師動作人物 | 1 | $12.95 | 2 | 6% |
| 4 | 終極飛翔披薩 | 8 | $36.75 | 8 | 4% |
| 5 | 外接式 5.25 吋軟碟機 (1/4 縮放) | 9 | $65.00 | 4 | 10% |
| 6 | 關聯式資料庫圖表 | 3 | $22.50 | 12 | 6.5% |
| 7 | 陰鬱 | 11 | $53.33 | 6 | 8% |
| 7 | 關聯式資料庫圖表 | 3 | $22.50 | 4 | 9% |
注意
請記住,在一般資料庫中,訂單詳細資料資料表只會包含 [產品識別碼] 欄位,而非 [產品名稱] 欄位。 範例資料表使用 [產品名稱] 欄位,讓資料更容易閱讀。
手動輸入範例資料
在 [建立] 索引標籤的 [資料表] 群組中,按一下 [資料表]。 Access 會在您的資料庫中新增新的空白資料表。
注意
如果您開啟新的空白資料庫,則無需按照此步驟進行。不過,每當您需要在資料庫中新增資料表時,則要按照此步驟進行。
按兩下標題列的第一個儲存格,然後輸入範例資料表中的欄位名稱。 根據預設,Access 會在標題列中以「 新增欄位」文字表示空白欄位,如下所示:
使用方向鍵移至下一個空白標題儲存格,然後輸入第二個欄位名稱。 您也可以按
TAB或按兩下新儲存格。 重複此步驟,直到輸入所有欄位名稱。在範例資料表中輸入資料。 當您輸入資料時,Access 會推斷每個欄位的資料類型。 如果您是第一次使用關聯式資料庫,您應該為資料表中的每個欄位設定特定的資料類型,例如數字、文字或日期/時間。 設定資料類型有助於確保準確的資料輸入,也有助於防止錯誤,例如在計算中使用電話號碼。 針對這些範例資料表,您應該讓 Access 推斷資料類型。
輸入完資料後,按一下 [儲存]。 鍵盤快速鍵:按 CTRL+S。 [另存新檔] 對話方塊隨即出現。
在 [資料表名稱] 方塊中,輸入範例資料表的名稱,然後按一下 [確定]。 之所以使用每個範例資料表的名稱,是因為操作說明區段中的查詢會使用這些名稱。
重複這些步驟,直到您建立本節開頭所列的每個範例資料表為止。
如果您不想手動輸入資料,請依照後續步驟將資料複製到試算表檔案,然後再將試算表檔案中的資料匯入 Access。
建立範例工作表
啟動試算表程式,然後建立新的空白檔案。 如果您使用 Excel,根據預設,它會建立一個新的空白活頁簿。
複製上述提供的第一個範例表格,並從第一個儲存格開始將它貼到第一個工作表中。
使用試算表程式所提供的技術,重新命名工作表。 為工作表提供與範例資料表相同的名稱。 例如,如果範例資料表的名稱是 [類別],請為您的工作表提供相同的名稱。
重複步驟 2 和 3,將每個範例表格複製到空白工作表,然後重新命名工作表。
注意
您可能需要將工作表新增至試算表檔案。 如需執行該工作的相關資訊,請參閱試算表程式的說明。
將活頁簿儲存到您的電腦或網路中方便使用的位置,然後進行下一組步驟。
從工作表建立資料庫資料表
- 在 [外部資料] 索引標籤的 [匯入 & 連結] 群組中,按一下[從檔案> Excel 新增資料來源>]。 此時會出現 [取得外部資料 - Excel 試算表 ] 對話方塊。
- 按一下 [瀏覽],開啟您在先前步驟中建立的試算表檔案,然後按一下 [確定]。 [匯入試算表精靈] 隨即啟動。
- 根據預設,如果您依照上一節中的步驟執行,精靈會選取活頁簿 (客戶 工作表中的第一張工作表,) ,而來自該工作表的資料會顯示在精靈頁面的下半節。 按一下 [下一步]。
- 在精靈的下一頁中,按一下 [第一列包含欄位標題],然後按 [下一步]。
- 或者,在下一頁,使用 [欄位選項] 下的文字方塊和清單來變更欄位名稱和資料類型,或從匯入作業中省略欄位。 否則,請按一下 [下一步]。
- 讓 [讓 Access 新增主索引鍵 ] 選項保持選取狀態,然後按 [下一步]。
- 根據預設,Access 會將工作表名稱套用到您的新資料表。 接受名稱或輸入其他名稱,然後按一下 [完成]。
- 重複步驟 1 到 7,直到您從活頁簿中的每一個工作表建立表格為止。
重新命名主索引鍵欄位
注意
匯入工作表時,Access 會自動在每個資料表中新增主索引鍵欄。 根據預設,Access 會為該欄 ID 命名,並將其設定 AutoNumber 為資料類型。 本節中的步驟說明如何重新命名每個主索引鍵欄位。 這樣做可以幫助您清楚地識別查詢中的所有欄位。
- 在 [瀏覽窗格] 中,以滑鼠右鍵按一下您在先前步驟中建立的每個資料表,然後按一下 [ 設計檢視]。
- 針對每個資料表,找出主索引鍵欄位。 根據預設,Access 會為每個欄位 識別碼命名。
- 在每個主索引鍵欄位的 [欄位名稱 ] 欄中,新增資料表的名稱。 例如,您可以將 [類別] 資料表的 [識別碼] 欄位重新命名為 [類別識別碼],並將 [訂單] 資料表的欄位重新命名為 [訂單識別碼]。對於 [訂單詳細資料] 資料表,請將欄位重新命名為 [詳細資料識別碼]。在 [產品] 資料表中,將欄位重新命名為 [產品識別碼]。
- 儲存變更。
每當範例資料表出現在本文中時,它們都會包含主索引鍵欄位,並且該欄位會依照使用上述步驟的說明重新命名。
使用 [合計] 資料列加總資料
您可以在 [資料工作表檢視] 中開啟查詢,新增資料列,然後選取您想要使用的彙總函數, Sum例如 、 Min、 Max或 Avg,以新增合計資料列至查詢。 本節中的步驟說明如何建立基本選取查詢並新增 [合計] 資料列。 您不需要使用上一節所述的範例表格。
建立基本的選取查詢
- 在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
- 按兩下您要在查詢中使用的資料表。 選取的資料表會在查詢設計工具的上方區段顯示為視窗。
- 按兩下您要在查詢中使用的資料表欄位。 您可以包含包含描述性資料的欄位,例如名稱和描述,但必須包含包含數值或貨幣資料的欄位。 每個欄位都會出現在設計格線的儲存格中。
- 按一下 [執行] 以執行查詢。 查詢結果集將顯示在 [資料工作表檢視] 中。
- 或者,切換到 [設計檢視] 並調整您的查詢。 若要這麼做,請以滑鼠右鍵按一下查詢的 [文件] 索引標籤,然後按一下 [設計檢視]。 然後,您可以視需要新增或移除資料表欄位來調整查詢。 若要移除欄位,請在設計格線中選取資料欄,然後按 DELETE。
- 儲存您的查詢。
新增合計列
- 請確定您的查詢是在 [資料工作表檢視] 中開啟。 若要這麼做,請以滑鼠右鍵按一下查詢的 [文件] 索引標籤,然後按一下 [資料工作表檢視]。 -或- 在 [瀏覽窗格] 中,按兩下查詢。 這將執行查詢,並將結果載入到資料工作表中。
- 在 [常用] 索引標籤上,按一下 [記錄] 群組中的 [合計]。 資料工作表中隨即出現新的 [合計 ] 資料列。
- 在 [ 合計 ] 列中,按一下您要加總欄位中的儲存格,然後從清單中選取 [加總 ]。
隱藏合計列
- 在 [常用] 索引標籤上,按一下 [記錄] 群組中的 [合計]。
如需使用 [合計] 資料列的詳細資訊,請參閱 在資料工作表中顯示資料行總數一文。
使用查詢計算總計
總計是欄中所有值的總和。 您可以計算數種類型的總計,包括:
- 將單一資料行中的值加總的簡單總計。 例如,您可以計算總運費。
- 計算總計,加總多個欄中的值。 例如,您可以將數個項目的成本乘以訂購的項目數量,然後計算所得值加總,以計算總銷售額。
- 總計,排除了某些記錄。 例如,您可以只計算上星期五的總銷售額。
下列各節中的步驟說明如何建立每種類型的總計。 這些步驟使用 [訂單] 和 [訂單詳細資料] 資料表。
[訂單] 資料表
| 訂單識別碼 | 訂單日期 | 出貨日期 | 船舶城市 | 運費 |
|---|---|---|---|---|
| 1 | 11/14/2005 | 11/15/2005 | Jakarta | $55.00 |
| 2 | 11/14/2005 | 11/15/2005 | 雪梨 | $76.00 |
| 3 | 11/16/2005 | 11/17/2005 | 雪梨 | $87.00 |
| 4 | 11/17/2005 | 11/18/2005 | Jakarta | $43.00 |
| 5 | 11/17/2005 | 11/18/2005 | 巴黎 | $105.00 |
| 6 | 11/17/2005 | 11/18/2005 | 斯圖加特 | $112.00 |
| 7 | 11/18/2005 | 11/19/2005 | 維也納 | $215.00 |
| 8 | 11/19/2005 | 11/20/2005 | 邁阿密 | $525.00 |
| 9 | 11/20/2005 | 11/21/2005 | 維也納 | $198.00 |
| 10 | 11/20/2005 | 11/21/2005 | 巴黎 | $187.00 |
| 11 | 11/21/2005 | 11/22/2005 | 雪梨 | $81.00 |
| 12 | 11/23/2005 | 11/24/2005 | Jakarta | $92.00 |
[訂單詳細資料] 資料表
| 詳細資料識別碼 | 訂單識別碼 | 產品名稱 | 產品 ID | 單價 | 數量 | Discount |
|---|---|---|---|---|---|---|
| 1 | 1 | 建立您自己的鍵盤 | 12 | $77.95 | 9 | 0.05 |
| 2 | 1 | 官僚非動作人物 | 2 | $78.88 | 4 | 0.075 |
| 3 | 2 | 計算機極客的練習! The DVD! | 7 | $14.88 | 6 | 0.04 |
| 4 | 2 | 神奇的電腦晶片 | 4 | $32.65 | 8 | 0.00 |
| 5 | 2 | 電腦極客與神話生物 | 6 | $78.50 | 4 | 0.00 |
| 6 | 3 | 存取! 遊戲! | 5 | $22.95 | 5 | 0.15 |
| 7 | 4 | 程式設計師動作人物 | 1 | $12.95 | 2 | 0.06 |
| 8 | 4 | 終極飛翔披薩 | 8 | $36.75 | 8 | 0.04 |
| 9 | 5 | 外接式 5.25 吋軟碟機 (1/4 縮放) | 9 | $65.00 | 4 | 0.10 |
| 10 | 6 | 關聯式資料庫圖表 | 3 | $22.50 | 12 | 0.065 |
| 11 | 7 | 陰鬱 | 11 | $53.33 | 6 | 0.08 |
| 12 | 7 | 關聯式資料庫圖表 | 3 | $22.50 | 4 | 0.09 |
計算簡單的總計
在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
按兩下您要用於查詢的資料表。 如果您使用範例資料,請按兩下 [訂單] 資料表。 資料表會出現在查詢設計工具上方區段的視窗中。
按兩下要加總的欄位。 請確定欄位已設定為 [數字] 或 [貨幣] 資料類型。 如果您嘗試加總非數值欄位中的值,例如文字欄位,Access 會在您嘗試執行查詢時顯示 準則運算式中資料類型不相符 的錯誤訊息。 如果您使用範例資料,請按兩下 [運費] 欄位。 如果您想要計算其他數值欄位的總計,可以將其他數值欄位新增至方格。 合計查詢可以計算多欄的總計。
在 [查詢設計 ] 索引標籤的 [顯示/隱藏 ] 群組中,按一下 [合計]。 [ 合計 ] 列會顯示在設計格線中,而 [分組依據] 會顯示在 [運費] 欄的儲存格中。
將 [合計 ] 列中儲存格中的值變更為 [加總]。
按一下 [執行] 以執行查詢,並在 [資料工作表檢視] 中顯示結果。
秘訣
Access 會在
SumOf您加總之欄位名稱的開頭附加。 若要將欄位標題變更為更有意義的標題,例如 [總運費],請切換回 [設計檢視],然後按一下設計格線中 [運費] 欄的 [ 欄位 ] 列。 將游標放在 [運費] 旁邊並輸入Total Shipping: Shipping Fee。或者,儲存查詢並關閉它。
計算排除某些記錄的總計
在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
按兩下 [訂單] 資料表和 [訂單詳細資料] 資料表。
將 [訂單] 資料表中的 [訂單日期] 欄位新增至查詢設計格線中的第一欄。
在第一欄的 [準則 ] 列中輸入
Date() -1。 該運算式會從計算的總計中排除當天的記錄。接下來,建立計算每筆交易銷售金額的欄位。 在格線第二欄的 [欄位 ] 列中輸入下列運算式:
Total Sales Value: (1-[Order Details].[Discount]/100)*([Order Details].[Unit Price]*[Order Details].[Quantity])請確定運算式參照欄位設為 [數字] 或 [貨幣] 資料類型。 如果您的運算式參照設為其他資料類型的欄位,Access 會在您嘗試執行查詢時顯示「 準則運算式中的資料類型不相符 」訊息。在 [查詢設計 ] 索引標籤的 [顯示/隱藏 ] 群組中,按一下 [合計]。 [ 合計 ] 列會顯示在設計格線中,而 [ 分組依據] 會顯示在第一欄和第二欄中。
在第二欄中,將 [合計 ] 資料列儲存格中的值變更為 [加總]。 Sum 函數會將個別銷售數字相加。
按一下 [執行] 以執行查詢,並在 [資料工作表檢視] 中顯示結果。
將查詢儲存為 [每日銷售]。
注意
下次您在 [設計檢視] 中開啟查詢時,您可能會注意到 [總銷售值] 欄的 [欄位 ] 和 [合計 ] 列中指定的值稍有變更。 運算式隨即會包含在 Sum 函數內,而 [合計 ] 列會顯示 運算式 ,而不是 [加總]。
例如,如果您使用範例資料並建立查詢 (,如先前步驟) 所示,您會看到:
Total Sales Value: Sum((1-[Order Details].Discount/100)*([Order Details].Unitprice*[Order Details].Quantity))
使用合計查詢來計算群組總計
本節中的步驟說明如何建立合計查詢,以計算資料群組的小計。 繼續進行時,請記住,根據預設,合計查詢只能包含包含群組資料的欄位,例如「類別」欄位,以及包含您想要加總之資料的欄位,例如「銷售」欄位。 合計查詢不能包含描述類別中項目的其他欄位。 如果您想要查看該描述性資料,您可以建立第二個選取查詢,將合計查詢中的欄位與其他資料欄位結合。
本節中的步驟說明如何建立總計,並選取識別每個產品總銷售額所需的查詢。 這些步驟假設使用這些範例資料表:
[產品] 資料表
| 產品 ID | 產品名稱 | 價格 | 類別 |
|---|---|---|---|
| 1 | 程式設計師動作玩偶 | $12.95 | 娃娃 |
| 2 | 享受 C# (適合全家人) 的桌遊 | $15.85 | 遊戲和拼圖 |
| 3 | 關聯式資料庫圖表 | $22.50 | 美術和框架 |
| 4 | 神奇的電腦晶片 (500 個) | $32.65 | 美術和框架 |
| 5 | 存取! 遊戲! | $22.95 | 遊戲和拼圖 |
| 6 | 電腦極客與神話生物 | $78.50 | 電玩遊戲 |
| 7 | 計算機極客的練習! The DVD! | $14.88 | DVD 和電影 |
| 8 | 終極飛翔披薩 | $36.75 | 運動 |
| 9 | 外接式 5.25 吋軟碟機 (1/4 縮放) | $65.00 | 模特兒和愛好 |
| 10 | 官僚非動作人物 | $78.88 | 娃娃 |
| 11 | 陰鬱 | $53.33 | 電玩遊戲 |
| 12 | 建立您自己的鍵盤 | $77.95 | 模特兒和愛好 |
[訂單詳細資料] 資料表
| 詳細資料識別碼 | 訂單識別碼 | 產品名稱 | 產品 ID | 單價 | 數量 | Discount |
|---|---|---|---|---|---|---|
| 1 | 1 | 建立您自己的鍵盤 | 12 | $77.95 | 9 | 5% |
| 2 | 1 | 官僚非動作人物 | 2 | $78.88 | 4 | 7.5% |
| 3 | 2 | 計算機極客的練習! The DVD! | 7 | $14.88 | 6 | 4% |
| 4 | 2 | 神奇的電腦晶片 | 4 | $32.65 | 8 | 0 |
| 5 | 2 | 電腦極客與神話生物 | 6 | $78.50 | 4 | 0 |
| 6 | 3 | 存取! 遊戲! | 5 | $22.95 | 5 | 15% |
| 7 | 4 | 程式設計師動作人物 | 1 | $12.95 | 2 | 6% |
| 8 | 4 | 終極飛翔披薩 | 8 | $36.75 | 8 | 4% |
| 9 | 5 | 外接式 5.25 吋軟碟機 (1/4 縮放) | 9 | $65.00 | 4 | 10% |
| 10 | 6 | 關聯式資料庫圖表 | 3 | $22.50 | 12 | 6.5% |
| 11 | 7 | 陰鬱 | 11 | $53.33 | 6 | 8% |
| 12 | 7 | 關聯式資料庫圖表 | 3 | $22.50 | 4 | 9% |
下列步驟假設 [訂單] 資料表中的 [產品識別碼] 欄位與 [訂單詳細資料] 資料表之間為一對多關聯,而 [訂單] 資料表位於關聯的「一」端。
建立合計查詢
在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
選取您想要處理的資料表,然後按一下 [新增]。 每個資料表都會隨即在查詢設計師的上半部以視窗形式出現。 如果您使用先前列出的範例資料表,請新增 [產品] 和 [訂單詳細資料] 資料表。
按兩下您要在查詢中使用的資料表欄位。 根據規則,您只會將 [群組] 欄位和 [值] 欄位新增至查詢。 不過,您可以使用計算,而不是值欄位,後續步驟將說明如何執行此操作。
從 [產品] 資料表新增 [類別] 欄位至設計格線。
在方格的第二欄中輸入下列運算式,以建立計算每筆交易銷售金額的欄位:
Total Sales Value: (1-[Order Details].[Discount]/100)*([Order Details].[Unit Price]*[Order Details].[Quantity])請確定運算式中參照的欄位是 [數字] 或 [貨幣] 資料類型。 如果您參照其他資料類型的欄位,Access 會在您嘗試切換到 [資料工作表檢視] 時顯示「 準則運算式中的資料類型不符 」錯誤訊息。在 [查詢設計 ] 索引標籤的 [顯示/隱藏 ] 群組中,按一下 [合計]。 [ 合計 ] 列會顯示在設計格線中,而該列中 [ 分組依據 ] 會顯示在第一欄和第二欄中。
在第二欄中,將 [合計 ] 資料列中的值變更為 [加總]。 Sum 函數會將個別銷售數字相加。
按一下 [執行] 以執行查詢,並在 [資料工作表檢視] 中顯示結果。
保持查詢開啟,以便在下一節中使用。 搭配合計查詢使用準則 您在上一節建立的查詢包含基礎資料表中的所有記錄。 計算總計時不會排除任何順序,而且會顯示所有類別的總計。 如果您需要排除某些記錄,您可以將準則新增至查詢。 例如,您可以忽略低於 $100 美元的交易,或只計算部分產品類別的總計。 本節中的步驟說明如何使用三種類型的準則:
計算總計時會忽略特定群組的準則。 例如,您將只計算視頻遊戲、藝術和框架以及體育類別的總計。
在計算特定總計之後隱藏其總計的準則。 例如,您只能顯示大於 $150,000 的總計。
將個別記錄排除在總計之外的準則。 例如,當 (
Unit Price * Quantity) 價值低於 $100 時,您可以排除個別銷售交易。 下列步驟會一一說明如何新增準則,並查看對查詢結果的影響。 將準則新增至查詢在 [設計檢視] 中開啟上一節的查詢。 若要這麼做,請以滑鼠右鍵按一下查詢的 [文件] 索引標籤,然後按一下 [設計檢視]。 -或- 在 [瀏覽窗格] 中,以滑鼠右鍵按一下查詢,然後按一下 [設計檢視]。
在「類別識別碼」欄的 「準則 」列中輸入
=Dolls Or Sports or Art and Framing。按一下 [執行] 以執行查詢,並在 [資料工作表檢視] 中顯示結果。
切換回 [設計檢視],然後在 [總銷售值] 欄的 [準則 ] 列中輸入
>100。執行查詢以查看結果,然後切換回 [設計檢視]。
現在新增準則以排除小於 $100 的個別銷售交易。 若要這樣做,您必須新增其他資料欄位。
注意
您無法在 [總銷售值] 欄中指定第三個準則。 您在此資料行中指定的任何準則會套用至總值,而非個別值。
將運算式從第二欄複製到第三欄。
在新欄的 [ 合計 ] 資料列中,選取 [ 位置 ],然後在 [ 準則 ] 資料列中輸入
>20。執行查詢以查看結果,然後儲存查詢。
注意
下次您在 [設計檢視] 中開啟查詢時,您可能會注意到設計格線稍有變更。 在第二欄中, [欄位 ] 列中的運算式會顯示在 Sum 函數內,而 [合計 ] 列中的值會顯示 運算式 ,而不是 [Sum]。
Total Sales Value: Sum((1-[Order Details].Discount/100)*([Order Details].Unitprice*[Order Details].Quantity))您也會看到第四欄。 此資料行是第二欄的複本,但在第二欄中指定的準則實際上會顯示為新欄的一部分。
使用交叉資料表查詢加總多個群組的資料
交叉資料表查詢是一種特殊類型的查詢,其結果會顯示在類似 Excel 工作表的方格中。 交叉資料表查詢會摘要您的值,然後依兩組事實來分組這些值 - 一組設定在一組資料列標題 (側邊) ,另一組則位於一組欄標題 (頂端) 。 下圖說明交叉資料表查詢範例的部分結果集:
繼續進行時,請記住,交叉資料表查詢不一定會填入結果集中的所有欄位,因為您在查詢中使用的資料表不一定包含每個可能資料點的值。
當您建立交叉資料表查詢時,通常會包含來自多個資料表的資料,且一律會包含三種類型的資料:用來做為列標題的資料、用來做為欄標題的資料,以及您想要加總或以其他方式計算的值。
本節中的步驟假設使用下表:
[訂單] 資料表
| 訂單日期 | 出貨日期 | 船舶城市 | 運費 |
|---|---|---|---|
| 11/14/2005 | 11/15/2005 | Jakarta | $55.00 |
| 11/14/2005 | 11/15/2005 | 雪梨 | $76.00 |
| 11/16/2005 | 11/17/2005 | 雪梨 | $87.00 |
| 11/17/2005 | 11/18/2005 | Jakarta | $43.00 |
| 11/17/2005 | 11/18/2005 | 巴黎 | $105.00 |
| 11/17/2005 | 11/18/2005 | 斯圖加特 | $112.00 |
| 11/18/2005 | 11/19/2005 | 維也納 | $215.00 |
| 11/19/2005 | 11/20/2005 | 邁阿密 | $525.00 |
| 11/20/2005 | 11/21/2005 | 維也納 | $198.00 |
| 11/20/2005 | 11/21/2005 | 巴黎 | $187.00 |
| 11/21/2005 | 11/22/2005 | 雪梨 | $81.00 |
| 11/23/2005 | 11/24/2005 | Jakarta | $92.00 |
[訂單詳細資料] 資料表
| 訂單識別碼 | 產品名稱 | 產品 ID | 單價 | 數量 | Discount |
|---|---|---|---|---|---|
| 1 | 建立您自己的鍵盤 | 12 | $77.95 | 9 | 5% |
| 1 | 官僚非動作人物 | 2 | $78.88 | 4 | 7.5% |
| 2 | 計算機極客的練習! The DVD! | 7 | $14.88 | 6 | 4% |
| 2 | 神奇的電腦晶片 | 4 | $32.65 | 8 | 0 |
| 2 | 電腦極客與神話生物 | 6 | $78.50 | 4 | 0 |
| 3 | 存取! 遊戲! | 5 | $22.95 | 5 | 15% |
| 4 | 程式設計師動作人物 | 1 | $12.95 | 2 | 6% |
| 4 | 終極飛翔披薩 | 8 | $36.75 | 8 | 4% |
| 5 | 外接式 5.25 吋軟碟機 (1/4 縮放) | 9 | $65.00 | 4 | 10% |
| 6 | 關聯式資料庫圖表 | 3 | $22.50 | 12 | 6.5% |
| 7 | 陰鬱 | 11 | $53.33 | 6 | 8% |
| 7 | 關聯式資料庫圖表 | 3 | $22.50 | 4 | 9% |
下列步驟說明如何建立交叉資料表查詢,以依城市將總銷售額分組。 查詢會使用兩個運算式來傳回格式化的日期和銷售總額。
建立交叉資料表查詢
- 在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
- 按兩下您要用於查詢的資料表。 每個資料表都會隨即在查詢設計師的上半部以視窗形式出現。 如果您使用範例資料表,請按兩下 [訂單] 資料表和 [訂單詳細資料] 資料表。
- 按兩下您要在查詢中使用的欄位。 每個欄位名稱都會顯示在設計格線 [ 欄位 ] 列的空白儲存格中。 如果您使用範例資料表,請從 [訂單] 資料表新增 [出貨城市] 和 [出貨日期] 欄位。
- 在 [欄位 ] 資料列的下一個空白儲存格中,複製並貼上或輸入下列運算式:
Total Sales: Sum(CCur([Order Details].[Unit Price]*[Quantity]*(1-[Discount])/100)*100) - 在 [查詢設計 ] 索引標籤的 [ 查詢類型 ] 群組中,按一下 [交叉資料表]。 [ 合計 ] 列和 [ 交叉資料表 ] 列會出現在設計格線中。
- 在 [城市] 欄位中按一下 [合計 ] 資料列中的儲存格,然後選取 [分組依據]。 對 [發貨日期] 欄位執行相同的操作。 將 [總銷售額] 欄位之 [合計 ] 儲存格中的值變更 為運算式。
- 在 [交叉資料表 ] 列中,將 [城市] 欄位中的儲存格設定為 [列標題]、將 [出貨日期] 欄位設定為 [ 欄位標題],並將 [總銷售額] 欄位設定為 [值]。
- 在 [查詢設計] 索引標籤的 [結果] 群組中,按一下 [執行]。 查詢結果會顯示在 [資料工作表檢視] 中。
彙總函數參考
本表格列出並說明 Access 在 [合計] 列和查詢中提供的彙總函數。 請記住,Access 為查詢提供的彙總函數比對 [合計] 資料列更多的彙總函數。
| 功能鍵 | 描述 | 可搭配使用的資料類型 |
|---|---|---|
| Average | 計算某欄的平均值。 該欄必須包含數字、貨幣或日期/時間資料。 此函數會忽略 Null 值。 | 數字、貨幣、日期/時間 |
| Count | 計算欄中的項目數量。 | 複雜的重複純量資料 (例如多重值清單欄) 以外的所有資料類型。 如需多重值清單的詳細資訊,請參閱 建立或刪除多重值欄位一文。 |
| Maximum | 傳回最高值的項目。 如果是文字資料,最高值是最後一個字母值,Access 會忽略大小寫。 此函數會忽略 Null 值。 | 數字、貨幣、日期/時間 |
| Minimum | 傳回最低值的項目。 如果是文字資料,最小值是第一個字母值,Access 會忽略大小寫。 此函數會忽略 Null 值。 | 數字、貨幣、日期/時間 |
| 標準差 | 衡量值與平均值 (平均數) 之間的離散程度。 如需使用此函數的詳細資訊,請參閱 在資料工作表中顯示欄總計一文。 |
數字、貨幣 |
| Sum | 加總欄中的項目。 僅適用於數字和貨幣資料。 | 數字、貨幣 |
| Variance | 計算欄中所有值的統計變異數。 此函數僅適用於數字和貨幣資料。 如果資料表包含少於兩列,Access 會傳回 Null 值。 如需差異函數的詳細資訊,請參閱 在資料工作表中顯示資料行總計一文。 |
數字、貨幣 |