使用交叉表查詢讓匯總數(shù)據(jù)更容易閱讀
如果您希望重構匯總數(shù)據(jù),使其更容易閱讀和理解,請考慮使用交叉表查詢。
交叉表查詢計算總和、平均值或其他聚合函數(shù) (聚合函數(shù):用于計算總計的函數(shù)。例如:SUM、COUNT、AVG 或 VAR。),然后按照兩組值對結(jié)果進行分組:一組值垂直分布在數(shù)據(jù)表的一側(cè),而另一組值水平分布在數(shù)據(jù)表的頂端。
注釋 不可在 Web 瀏覽器中使用交叉表查詢。如果要在 Web 數(shù)據(jù)庫中運行交叉表查詢,必須先使用 Access 打開數(shù)據(jù)庫。
本文內(nèi)容
交叉表查詢是一種選擇查詢 (選擇查詢:就表中存儲的數(shù)據(jù)提出問題,然后在不更改數(shù)據(jù)的情況下以數(shù)據(jù)表的形式返回一個結(jié)果集。)。在運行交叉表查詢時,結(jié)果顯示在一個數(shù)據(jù)表中,該數(shù)據(jù)表的結(jié)構不同于其他類型的數(shù)據(jù)表。
與顯示相同數(shù)據(jù)的簡單選擇查詢(如下圖所示)相比,交叉表查詢的結(jié)構讓數(shù)據(jù)更易于閱讀。
此選擇查詢按員工和類別在垂直方向?qū)R總數(shù)據(jù)進行分組。
交叉表查詢可以顯示相同的數(shù)據(jù),但它同時在水平方向和垂直方向?qū)?shù)據(jù)進行分組,這樣數(shù)據(jù)表可以更緊湊并且更容易閱讀。
在創(chuàng)建交叉表查詢時,需要指定哪些字段包含行標題,哪些字段包含列標題以及哪些字段包含要匯總的值。在指定列標題和要匯總的值時,其中每個只能使用一個字段。在指定行標題時,最多可使用三個字段。
提示 此外,也可以使用表達式生成行標題、列標題或要匯總的值。
位于此側(cè)的一列、兩列或三列包含行標題。用作行標題的字段名稱顯示在這些列的最上面的一行中。
此處顯示行標題。在使用多個行標題字段時,由于將顯示所有行標題組合,因此交叉表數(shù)據(jù)表中的行數(shù)會迅速增加。
位于此側(cè)的列包含列標題和匯總值。請注意,列標題字段的名稱不顯示在數(shù)據(jù)表中。
此處顯示匯總值。
使用交叉表查詢向?qū)?/span> 交叉表查詢向?qū)ǔJ莿?chuàng)建交叉表查詢的最快、最簡單的方法。該向?qū)槟瓿纱蟛糠值墓ぷ?,但有些選項它沒有提供。
該向?qū)Ь哂邢铝袃?yōu)點:
✍ | 簡單易用。 若要使用該向?qū)?,請啟動它,然后回答一系列引導問題。 |
✍ | 它可以自動將日期組合為間隔。 如果對列標題使用包含日期/時間數(shù)據(jù)的字段,該向?qū)н€會幫助您將日期組合為間隔,如月份或季度等。 |
提示 在對列標題使用“日期/時間”字段中的值時,如果要將日期組合為該向?qū)Р惶峁┑拈g隔(如財政年度或兩年期間),則不要使用該向?qū)?chuàng)建查詢,而應該在設計視圖中創(chuàng)建交叉表查詢,然后使用表達式創(chuàng)建這些間隔。
✍ | 它可以用作設計起點。 可以使用該向?qū)?chuàng)建所需的基本交叉表查詢,然后使用設計視圖精確調(diào)整該查詢的設計。 |
但不能使用該向?qū)?zhí)行下列任務:
✍ | 將多個表或查詢用作記錄源 (記錄源:窗體、報表或數(shù)據(jù)訪問頁的基礎數(shù)據(jù)源。在 ACCESS 數(shù)據(jù)庫中,它可以是表、查詢,也可以是 SQL 語句。在 ACCESS 項目中,它可以是表、視圖、SQL 語句,也可以是存儲過程。)。 |
✍ | 使用表達式 (表達式:算術或邏輯運算符、常數(shù)、函數(shù)和字段名稱、控件和屬性的任意組合,計算結(jié)果為單個值。表達式可執(zhí)行計算、操作字符或測試數(shù)據(jù)。)創(chuàng)建字段。 |
✍ | 指定要用作列標題的固定值的列表。 |
注釋 在向?qū)У淖詈笠徊?,可以選擇在設計視圖中修改查詢。這樣可以添加向?qū)Р恢С值牟樵冊O計元素,如附加記錄源。
在設計視圖中工作 通過設計視圖,可以對查詢設計進行更多的控制。該視圖支持向?qū)е形刺峁┑囊恍┕δ堋?/span>
如果您要執(zhí)行下列任務,請考慮使用設計視圖創(chuàng)建交叉表查詢:
✍ | 在創(chuàng)建過程中進行更多的控制,而向?qū)詣訛槟龀鲆恍Q定。 |
✍ | 將多個表或查詢用作記錄源。 |
✍ | 向查詢中添加參數(shù)提示。 |
✍ | 將表達式用作查詢中的字段。 |
✍ | 指定要用作列標題的固定值的列表。 |
✍ | 練習使用設計網(wǎng)格 (設計網(wǎng)格:在查詢設計視圖或“高級篩選/排序”窗口中設計查詢或篩選時所用的網(wǎng)格。對于查詢,該網(wǎng)格以前稱為“QBE 網(wǎng)格”。)。 |
在 SQL 視圖中編寫查詢 如果愿意,您可以在 SQL 視圖中編寫交叉表查詢,但不能使用 SQL 視圖指定參數(shù)數(shù)據(jù)類型。如果要在交叉表查詢中使用參數(shù),必須通過在設計視圖中修改查詢來指定參數(shù)數(shù)據(jù)類型。
提示 請記住,不必局限于一種方法來創(chuàng)建交叉表查詢??梢允褂孟?qū)?chuàng)建查詢,然后再使用設計視圖修改查詢設計。
如果使用交叉表查詢向?qū)В瑒t需要將單個表或查詢用作交叉表查詢的記錄源。如果單個表中不具有您要包含在交叉表查詢中的全部數(shù)據(jù),則首先應創(chuàng)建一個返回所需數(shù)據(jù)的選擇查詢。有關創(chuàng)建選擇查詢的詳細信息,請參閱請參閱部分。
1. | 在“創(chuàng)建”選項卡上的“宏和代碼”組中,單擊“查詢向?qū)А?/span>。 |
2. | 在“新建查詢”對話框中,單擊“交叉表查詢向?qū)А?/span>,然后單擊“確定”。 |
將啟動交叉表查詢向?qū)А?/span>
3. | 在向?qū)У牡谝豁摚x擇要用于創(chuàng)建交叉表查詢的表或查詢。 |
4. | 在下一頁上,選擇包含要用作行標題的值的字段。 |
最多可選擇三個字段用作行標題源,但使用的行標題越少,交叉表查詢數(shù)據(jù)表就越容易閱讀。
注釋 如果選擇多個字段來提供行標題,則選擇這些字段的順序?qū)Q定對結(jié)果排序的默認順序。
5. | 在下一頁上,選擇包含要用作列標題的值的字段。 |
通常應選擇一個包含很少值的字段,這樣有助于使結(jié)果易于閱讀。例如,最好是使用只包含少量可能值(如性別)的字段,而不是使用包含許多不同值(如年齡)的字段。
如果選擇用于列標題的字段具有“日期/時間”數(shù)據(jù)類型,則向?qū)黾右粋€步驟,使您能夠指定將日期組合為間隔(如月份或季度)的方式。
6. | 如果為列標題選擇了“日期/時間”字段,則向?qū)У南乱豁摃竽付ㄒ糜诮M合日期的間隔??梢灾付?/span>“年”、“季度”、“月”、“日期”或“日期/時間”。如果沒有為列標題選擇“日期/時間”字段,則向?qū)^該頁。 |
7. | 在下一頁上,選擇一個字段和一個用于計算匯總值的函數(shù)。所選字段的數(shù)據(jù)類型 (字段數(shù)據(jù)類型:決定可以存儲哪種數(shù)據(jù)的字段特征。例如,數(shù)據(jù)類型為“文本”的字段可以存儲由文本或數(shù)值字符組成的數(shù)據(jù),而“數(shù)字”字段只能存儲數(shù)值數(shù)據(jù)。)將決定哪些函數(shù)可用。 |
8. | 在同一頁上,選擇或清除“是,包括各行小計”復選框以包含或排除行小計。 |
如果包含行小計,則交叉表查詢中有一個附加行標題,該標題與字段值使用相同的字段和函數(shù)。包含行小計還會插入一個對其余列進行匯總的附加列。例如,如果交叉表查詢按位置和性別(使用性別列標題)計算平均年齡,該附加列會按位置計算平均年齡,而不分性別。
注釋 可以通過在設計視圖中編輯交叉表查詢,更改用于生成行小計的函數(shù)。
9. | 在向?qū)У南乱豁撋希I入查詢的名稱,然后指定是查看結(jié)果還是修改查詢設計。 |
通過使用設計視圖創(chuàng)建交叉表查詢,可以根據(jù)需要使用任意多個記錄源(表和查詢)。不過,您可以讓設計簡單些,方法是:先創(chuàng)建一個返回所需的全部數(shù)據(jù)的選擇查詢,然后將該查詢用作交叉表查詢的唯一記錄源。有關創(chuàng)建選擇查詢的詳細信息,請參閱請參閱部分。
當在設計視圖中生成交叉表查詢時,使用設計網(wǎng)格中的“總計”和“交叉表”行指定哪個字段的值將成為列標題,哪些字段的值將成為行標題,哪個字段的值將用于計算總計、平均值、計數(shù)或其他計算。
這些行中的設置決定字段是行標題、列標題還是匯總值。
此設置將字段值顯示為行標題。
此設置將字段值顯示為列標題。
這些設置生成匯總值。
1. | 在“創(chuàng)建”選項卡上的“宏和代碼”組中,單擊“查詢設計”。 |
2. | 在“顯示表”對話框中,雙擊要用作記錄源的各個表或查詢。 |
如果使用多個記錄源,請確保這些表或查詢基于它們共同的字段相聯(lián)接 (聯(lián)接:表格或查詢中的字段與另一表格或查詢中具有同一數(shù)據(jù)類型的字段之間的關聯(lián)。聯(lián)接向程序說明了數(shù)據(jù)之間的關聯(lián)方式。根據(jù)聯(lián)接的類型,不匹配的記錄可能被包括在內(nèi),也可能被排除在外。)。有關聯(lián)接表和查詢的詳細信息,請參閱請參閱部分。
3. | 關閉“顯示表”對話框。 |
4. | 在“設計”選項卡的“查詢類型”組中,單擊“交叉表”。 |
5. | 在查詢設計窗口中,雙擊要用作行標題的源的各個字段。最多可以為行標題選擇三個字段。 |
6. | 在查詢設計網(wǎng)格中的各個行標題字段的“交叉表”行中,選擇“行標題”。 |
可以在“條件”行中輸入一個表達式來限制該字段的結(jié)果。還可以使用“排序”行指定字段的排序順序。
7. | 在查詢設計窗口中,雙擊要用作列標題的源的字段。只能為列標題選擇一個字段。 |
8. | 在查詢設計網(wǎng)格中的列標題字段的“交叉表”行中,選擇“列標題”。 |
可以在“條件”行中輸入一個表達式來限制列標題字段的結(jié)果。但是,對列標題字段使用條件表達式不會限制交叉表查詢返回的列數(shù),而是會限制哪些列中包含數(shù)據(jù)。例如,假設有一個列標題字段包含三個可能值:red、green 和 blue。如果將條件 ='blue' 應用于該列標題字段,則交叉表仍會顯示 red 列和 green 列,但只有 blue 列包含數(shù)據(jù)。
注釋 如果要限制顯示為列標題的值,可以通過使用查詢的“列標題”屬性指定固定值的列表。有關詳細信息,請參閱為列標題指定固定值。
9. | 在查詢設計窗口中,雙擊要用于計算匯總值的字段。只能選擇一個字段用于匯總值。 |
10. | 在查詢設計網(wǎng)格中的匯總值字段的“總計”行中,選擇一個用于計算這些值的聚合函數(shù)。 |
11. | 在匯總值字段的“交叉表”行中,選擇“值”。 |
不能為匯總值字段指定條件,也不能在該字段上進行排序。
12. | 在“設計”選項卡上的“結(jié)果”組中,單擊“運行”。 |
如果要指定用于列標題的固定值,可以設置查詢的“列標題”屬性。
1. | 在設計視圖中打開交叉表查詢。 |
2. | 如果未顯示屬性表,請按 F4 顯示它。 |
3. | 在屬性表的“常規(guī)”選項卡的上方,確保“所選內(nèi)容的類型”為“查詢屬性”。如果不是,請在查詢設計網(wǎng)格上方的空間中單擊一處空白位置。 |
4. | 在屬性表的“常規(guī)”選項卡上,在“列標題”屬性中輸入要用作列標題的逗號分隔的值列表。 |
注釋 有些字符(如大多數(shù)標點符號)在列標題中是不允許使用的。如果在值列表中使用這些字符,則 Access 會將所有此類字符替換為下劃線 (_)。
交叉表查詢在 SQL 中表示為 TRANSFORM 語句。TRANSFORM 語句的語法如下:
TRANSFORM aggfunction
selectstatement
PIVOT pivotfield [IN (value1[, value2[, ...]])]
TRANSFORM 語句包含以下三部分:
部分 |
說明 |
aggfunction |
一個用于對所選數(shù)據(jù)執(zhí)行運算的 SQL 聚合函數(shù)。 |
selectstatement |
一個 SELECT 語句。 |
pivotfield |
要用來在查詢的結(jié)果集中創(chuàng)建列標題的字段或表達式 (表達式:算術或邏輯運算符、常數(shù)、函數(shù)和字段名稱、控件和屬性的任意組合,計算結(jié)果為單個值。表達式可執(zhí)行計算、操作字符或測試數(shù)據(jù)。)。 |
value1, value2 |
用于創(chuàng)建列標題的固定值。 |
SQL 視圖不限制可用作交叉表查詢的記錄源的表或查詢的數(shù)量。不過,您可以讓設計簡單些,方法是:創(chuàng)建一個返回要在交叉表查詢中使用的全部數(shù)據(jù)的選擇查詢,然后將該選擇查詢用作記錄源。有關創(chuàng)建選擇查詢的詳細信息,請參閱請參閱部分。
1. | 在“設計”選項卡上的“宏和代碼”組中,單擊“查詢設計”。 |
2. | 關閉“顯示表”對話框。 |
3. | 在“設計”選項卡上的“結(jié)果”組中,單擊“SQL”。 |
4. | 在“SQL 對象”選項卡上,鍵入或粘貼以下 SQL 語句: |
TRANSFORM
SELECT
FROM
GROUP BY
PIVOT
;
5. | 在第一行上,在 TRANSFORM 后面鍵入一個用于計算匯總值的表達式;例如,Sum([Amount])。 |
注釋 如果要將多個表或查詢用作記錄源,請將表或查詢的名稱包含在各個字段名中;例如,Sum([Expense].[Amount])。
6. | 在第二行上,在 SELECT 后面鍵入要用于行標題的字段或字段表達式的列表。用逗號分隔各列表項;例如,[Budget].[Dept_ID], [Expense].[Type]。 |
7. | 在第三行上,在 FROM 后面鍵入要用作記錄源的表或查詢的列表;例如,Budget, Expense。 |
8. | 在第四行上,在 GROUP BY 后面鍵入步驟 6 中用于 SELECT 子句的相同字段列表。 |
9. | 在第五行上,在 PIVOT 后面鍵入一個要用于列標題的字段名或表達式;例如,PIVOT [Budget].[Year]。 |
若要在 SQL 視圖中向交叉表查詢添加排序順序,請使用 ORDER BY 子句。
1. | 在 GROUP BY 子句和 PIVOT 子句之間插入一行。 |
2. | 在新行上,鍵入 ORDER BY 并在后面跟一個空格。 |
3. | 鍵入要對其進行排序的字段名或表達式;例如,ORDER BY [Expense].[Expense_Class] |
默認情況下,ORDER BY 子句按升序?qū)χ颠M行排序。如果要按降序排序,請在字段名或表達式后面鍵入 DESC。
4. | 如果要對附加字段或表達式進行排序,請鍵入一個逗號,然后鍵入附加字段名或表達式。字段或表達式將按照在 ORDER BY 子句中出現(xiàn)的順序進行排序。 |
可以使用下列過程指定要用作列標題的值列表,并向行標題字段中添加條件。這些過程假定交叉表查詢已在 SQL 視圖中打開。
✍ | 在 PIVOT 子句末尾,鍵入 IN 并在后面跟隨一個要用作列標題的逗號分隔的值列表(放在括號內(nèi))。例如,IN (2007, 2008, 2009, 2010) 會生成四個列標題:2007、2008、2009 和 2010。 |
注釋 如果指定的固定值與數(shù)據(jù)透視字段中的字段值不對應,則該固定值將成為空列的列標題。
1. | 在 FROM 子句后面插入一個新行。 |
2. | 鍵入 WHERE 并在后面跟隨一個字段條件。 |
如果要使用附加條件,可以使用 AND 和 OR 運算符擴展 WHERE 子句。此外,還可以使用括號將條件組合為邏輯集。
有時,需要將字段值組合為范圍,然后將這些范圍用于行或列標題,而不是將各個字段值用于行或列標題。例如,假設您對列標題使用“年齡”字段。您可能更愿意使用表示年齡范圍的列,而不是對每個年齡分別使用一列。
可以在表達式中使用 IIf 函數(shù)來創(chuàng)建要用于行或列標題的范圍。
提示 如果要使用“日期/時間”字段創(chuàng)建間隔,請考慮使用交叉表查詢向?qū)?。使用該向?qū)Э梢詫⑷掌诮M合為以下間隔:“年”、“季度”、“月”、“日期”或“日期/時間”。如果這些間隔都不能滿足您的要求,則應在設計視圖中創(chuàng)建交叉表查詢,然后使用此部分中介紹的方法創(chuàng)建所需的間隔。
IIf 的工作方式是:對一個表達式進行計算;如果該表達式為 true,則返回一個值;如果該表達式為 false,則返回一個替代值。通過嵌套 IIf 語句,可以創(chuàng)建一個邏輯比較序列。因此,可以使用 IIf 將數(shù)值字段值分隔為范圍。
IIf(expr, truepart, falsepart)
IIf 函數(shù)語法包含以下這些參數(shù) (參數(shù):為操作、事件、方法、屬性、函數(shù)或過程提供信息的值。):
參數(shù) |
說明 |
expr |
必需的參數(shù)。要對其進行計算的表達式。 |
truepart |
必需的參數(shù)。當 expr 為 True 時返回的值或表達式。 |
falsepart |
必需的參數(shù)。當 expr 為 False 時返回的值或表達式。 |
1. | 在設計視圖中打開交叉表查詢。 |
2. | 在查詢設計網(wǎng)格的“字段”行中,右擊一個空列,然后在快捷菜單上單擊“顯示比例”。 |
3. | 在“縮放”框中,鍵入字段別名 (別名 (SQL):表達式中表或字段的可選名稱。通常用來縮短表或字段名以便以后在代碼中引用,這樣可防止可能出現(xiàn)的模糊引用或者在查詢輸出中提供更具描述性的名稱。),并且后跟一個冒號 (:)。 |
4. | 鍵入 IIf()。 |
5. | 在 IIf 后面的括號中,鍵入一個定義字段值的第一個范圍的比較表達式。 |
例如,假設您要為“年齡”字段創(chuàng)建范圍,并希望將每個范圍設為二十年。則第一個范圍的比較表達式為 [Age]<21。
6. | 在比較表達式后面鍵入一個逗號,然后鍵入該范圍的名稱,并將其用雙引號括起。提供的名稱將成為位于該范圍內(nèi)的值的交叉表標題。 |
例如,在 [Age]<21 后面鍵入一個逗號,然后鍵入 "0-20 years"。
7. | 在范圍名稱后面鍵入一個逗號(在雙引號外面),然后執(zhí)行下列操作之一: |
✍ | 若要創(chuàng)建其他范圍,請鍵入 IIf(),然后重復步驟 5、6 和 7。 |
✍ | 對于最后一個范圍,只需鍵入該范圍的名稱即可。 |
例如,以下所示是一個完整的嵌套 IIf 表達式(為易于閱讀,添加了換行符),該表達式將“年齡”字段分隔為包含二十年的范圍:
IIf([Age]<21,"0-20 years",
IIf([Age]<41,"21-40 years",
IIf([Age]<61,"41-60 years",
IIf([Age]<81,"61-80 years", "80+ years"))))
注釋 當 Access 對該表達式進行計算時,只要某一 IIf 語句的計算結(jié)果為 true,它就會停止計算。您不必指定每個范圍的下限,因為低于給定范圍下限的所有值的計算結(jié)果都為 true。
8. | 在查詢設計網(wǎng)格的“總計”行中,選擇“Group By”。 |
9. | 在“交叉表”行中,指定是否將范圍用作行標題或列標題。請記住,可以指定一到三個行標題,但只能指定一個列標題。 |
您可能希望交叉表查詢在運行時提示輸入數(shù)據(jù)。例如,假設要使用多個行標題,其中一個行標題為“國家/地區(qū)”。您可能希望查詢提示輸入一個名稱,然后根據(jù)用戶的輸入顯示數(shù)據(jù),而不是為每個國家或地區(qū)顯示數(shù)據(jù)。
可以向任意行標題字段添加參數(shù)提示。
注釋 也可以向列標題字段添加參數(shù)提示,但這不會限制所顯示的列。有關對所顯示的列進行限制的詳細信息,請參閱為列標題指定固定值部分。
1. | 在設計視圖中打開交叉表查詢。 |
2. | 在需要提示用戶進行輸入的行標題字段的“條件”行中,鍵入問題文本(用方括號括起)。在運行查詢時,該問題文本將顯示為提示。 |
例如,如果在“條件”行中鍵入 [Which country or region?],則在運行查詢時,會出現(xiàn)一個對話框,其中包含問題“Which country or region?”、一個輸入框以及一個“確定”按鈕。
提示 如果希望能夠靈活地輸入?yún)?shù),請使用 Like 運算符將表達式與通配符連接起來。例如,可以使用 Like [Which country or region?]&"*" 使參數(shù)與更大的輸入范圍相匹配,而不是將 [Which country or region?] 用作條件。使用 Like 不會更改參數(shù)提示的外觀。
3. | 在“設計”選項卡的“顯示/隱藏”組中,單擊“參數(shù)”。 |
4. | 在“查詢參數(shù)”對話框的“參數(shù)”列中,輸入“條件”行中使用的相同參數(shù)提示。請包含方括號,但不要包含任何連接的通配符或 Like 運算符。 |
5. | 在“數(shù)據(jù)類型”列中,為參數(shù)選擇數(shù)據(jù)類型。該數(shù)據(jù)類型應與行標題字段的數(shù)據(jù)類型相匹配。 |
如果在交叉表查詢中用于計算匯總值的字段包含空值,則所使用的任意聚合函數(shù)都會忽略這些值。對于某些聚合函數(shù),這可能會影響到結(jié)果。例如,若要計算平均值,應將所有值相加并將相加結(jié)果除以這些值的數(shù)量。但如果字段包含任意空值,則這些空值將不會被計入值數(shù)量。
在有些情況下,您可能希望將所有空值都替換為零,以便在執(zhí)行聚合計算時會計入這些值??梢允褂?Nz 函數(shù)將空值替換為零。
Nz(variant [, valueifnull ] )
Nz 函數(shù)語法接受以下參數(shù):
參數(shù) |
說明 |
variant |
必需的參數(shù)。Variant 數(shù)據(jù)類型 (數(shù)據(jù)類型:決定字段可擁有的數(shù)據(jù)類型的字段特征。數(shù)據(jù)類型包括 BOOLEAN、INTEGER、LONG、CURRENCY、SINGLE、DOUBLE、DATE、STRING 和 VARIANT(默認)。)的變量。 |
valueifnull |
可選的參數(shù)(除非在查詢中使用)。一種 Variant,它提供當 variant 參數(shù)為 Null 時要返回的值。使用此參數(shù)可返回零或零長度字段串以外的值。 注釋 如果在查詢的表達式中使用不帶 valueifnull 參數(shù)的 Nz 函數(shù),則對于包含空值的字段,結(jié)果將為零長度字符串。 |
1. | 在設計視圖中打開查詢后,在查詢設計網(wǎng)格中右擊“值”字段。 |
2. | 在快捷菜單中,單擊“顯示比例”。 |
3. | 在“縮放”框中,將字段名或表達式放在括號,然后在括號前面鍵入 Nz。 |
4. | 在右側(cè)括號內(nèi)直接鍵入 , 0。 |
例如,如果將 Nz 用于名為“Hours Lost”的字段,以將 null 值轉(zhuǎn)換為零,那么最終的表達式將如下所示:
Nz([Hours Lost], 0)
✍ | 讓交叉表查詢簡單些 隨著行組合數(shù)量的增大,交叉表查詢可能變得難以閱讀。因此請盡量少用行標題。 |
✍ | 考慮分步生成交叉表查詢 請不要局限于只使用表。通常還可以先生成總計查詢 (總計查詢:這種查詢可針對表(一個或多個)中各不同字段顯示匯總計算,如平均值或總計值??傆嫴樵儾皇且粋€單獨種類的查詢,而是擴展了選擇查詢的靈活性。),然后將該查詢用作交叉表查詢的記錄源。 |
✍ | 慎重選擇列標題字段 當列標題的數(shù)量保持相對較少時,交叉表數(shù)據(jù)表往往更容易閱讀。在確定要用作標題的字段后,請考慮使用具有最少明確值的字段來生成列標題。例如,如果查詢按年齡和性別計算值,請考慮對列標題使用性別而不是年齡,因為性別的可能值通常要比年齡少。 |
✍ | 在 WHERE 子句中使用子查詢 在交叉表查詢中,可以將子查詢中用作 WHERE 子句的一部分。 |