附註: 本主題中的資訊僅適用於 Microsoft Access 專案 (.adp) 。
[查詢] Designer包含三個窗格:「圖表」窗格、「格線」窗格和 SQL 窗格。
查詢Designer的三個窗格
-
[圖表] 窗格會顯示您正在查詢的資料表、檢視和內嵌函式。 每個矩形代表一個表格、視圖或內嵌函數,並顯示可用的資料欄以及指示如何在查詢中使用每個欄的圖示。 聯結由矩形之間的線條表示。
-
[格點] 窗格 包含類似試算表的格線,您可以在其中指定選項,例如要顯示哪些資料欄、要選取哪些列、如何將列分組等等。
-
SQL 窗格 會顯示查詢的 SQL 陳述式。 您可以編輯 Query Designer 所建立的 SQL 陳述式,也可以輸入您自己的 SQL 陳述式。 它對於輸入無法使用「圖表」和「網格」窗格建立的 SQL 陳述式特別有用,例如聯合查詢。
您可以在任何窗格中工作來建立查詢:您可以在「圖表」窗格中選擇資料行、將資料行輸入到「格線」窗格中,或將其設為 SQL 窗格中 SQL 陳述式的一部分,以指定要顯示的資料行。 「圖表」、「格線」和「SQL」窗格會同步處理,當您在一個窗格中進行變更時,其他窗格會自動反映變更。
圖表窗格
「圖表」窗格概觀
[圖表] 窗格會顯示查詢中表格、檢視、使用者定義函數或子查詢的圖形顯示。 它也會顯示它們之間的任何聯結關係。
在 [圖表] 窗格中,您可以:
-
新增或移除資料表、檢視、使用者定義函數或子查詢,並指定輸出的資料欄。
-
指定用於排序查詢的資料行。
-
指定您要將結果集中的資料列分組。
-
建立或修改資料表、檢視、使用者定義函式或子查詢之間的聯結。
當您在 [圖表] 窗格中進行變更時,會更新 [格線] 窗格和 SQL 窗格,以反映您的變更。 例如,如果您在 [圖表] 窗格中的表格、視圖、使用者定義函數或子查詢視窗中選取要輸出的資料行,則 Query Designer 會將資料資料行新增至 [方格] 窗格,以及 SQL 窗格中的 SQL 陳述式。
關於「圖表」窗格圖示、核取方塊和符號
每個表格、檢視、使用者定義的函數或子查詢都會在 [圖表] 窗格中顯示為個別視窗。 每個矩形標題列中的圖示會指出矩形所代表的物件類型,如下表所示。
圖示 |
物件類型 |
|
表格 |
|
檢視 |
|
內嵌功能 |
|
FROM 子句中的子查詢 () |
每個矩形都會顯示表格、檢視或使用者定義函數的資料欄。 核取方塊和符號會出現在資料行名稱旁邊,以指出資料行在查詢中的使用方式。 工具提示會顯示資料行的資料類型和大小等資訊。
下表列出每個表格、檢視或使用者定義函數的矩形中使用的核取方塊和符號。
核取方塊或符號 |
描述 |
|
指定資料行是否出現在查詢結果集中 ([選取查詢) ],或用於 [更新]、[附加]、[製作資料表] 或 [附加值] 查詢。 選取資料行以將其新增至結果。 如果選取 (所有直欄) ,則所有資料直欄都會顯示在輸出中。 與核取方塊搭配使用的圖示會根據您要建立的查詢類型而變更。 建立「刪除」查詢時,您無法選取個別資料行。 |
|
指出資料行正用來排序查詢結果 (是 ORDER BY 子句) 的一部分。 如果排序順序為遞增,則圖示會顯示為 A-Z,如果排序順序為遞減,則圖示會顯示為 ZA。 |
|
指出資料欄正用來建立群組結果集 (該結果集是聚集查詢中) GROUP BY 子句的一部分。 |
|
指出資料直欄包含在查詢的搜尋條件中 (是 WHERE 或 HAVING 子句) 的一部分。 |
|
指出正在彙總資料行的內容,以取得輸出 (包含在 SUM、AVG 或其他聚集函數) 中。 |
附註: 如果您沒有足夠的存取權限,或資料庫驅動程式無法傳回資料表、檢視或使用者定義函數的資料行,則 Query Designer 將不會顯示資料行。 在這種情況下,「查詢」Designer只會顯示表格、檢視或使用者定義函數的標題列。
[圖表] 窗格上的聯結資料表
如果查詢涉及聯結,則聯結中涉及的資料欄之間會出現聯結線。 例如,如果未 (顯示聯結的資料直欄,例如,表格、視圖、使用者定義函數或子查詢視窗已最小化,或聯結涉及運算式) ,則「查詢」Designer會將聯結行放在代表表格、視圖、使用者定義函數或子查詢的矩形的標題列中。 「查詢」Designer會針對每個結合條件顯示一條結合行。
聯結線中間的圖示形狀指出表格或表格結構物件的結合方式。 如果聯結子句使用等於 (=) 以外的運算子,則運算子會顯示在聯結行圖示中。 下表列出可在聯結行中顯示的圖示。
加入線路圖示 |
描述 |
|
內部聯結 (使用等號) 建立。 |
|
以「大於」運算子為基礎的內部聯結。 (聯結線圖示中顯示的運算子會反映聯結中使用的運算子 ) |
|
外部聯結,其中左側表示的表格中的所有列都將包含在內,即使它們在相關表格中沒有相符項。 |
|
外部聯結,其中將包含右側表示的表格中的所有列,即使它們在相關表格中沒有相符項。 |
|
一個完整的外部聯結,其中將包含兩個表格中的所有列,即使它們在相關表格、視圖、使用者定義函數或子查詢中沒有相符項。 |
聯結線末端的圖示表示聯結的類型。 下表列出聯結類型,以及可顯示在聯結線結尾的圖示。
連接線末端的圖示 |
描述 |
|
一對一聯結 |
|
一對多聯結 |
|
查詢 Designer 無法判斷聯結類型 |
「格線」窗格
[格線] 窗格概觀
「格線」窗格可讓您在類似試算表的網格中輸入您的選擇,以指定查詢選項,例如要顯示哪些資料欄、如何排序結果,以及要選取哪些列。 在 [格線] 窗格中,您可以指定:
-
要顯示的資料行和資料行名稱別名。
-
資料行所屬的資料表。
-
計算資料行的運算式。
-
查詢的排序順序。
-
搜尋條件。
-
分組準則,包括用於摘要報告的彙總函式。
-
更新或附加值查詢的新值。
-
附加查詢的目標資料行名稱。
您在 [格線] 窗格中所做的變更會自動反映在 [圖表] 窗格和 SQL 窗格中。 同樣地,「格線」窗格會自動更新,以反映在其他窗格中所做的變更。
關於 [格線] 窗格欄
[格線] 窗格中的資料列會顯示查詢中使用的資料欄;欄會顯示查詢選項。
[格線] 窗格中顯示的特定資訊取決於您要建立的查詢類型。 如果您要建立 [選取] 查詢,則 [方格] 窗格包含的資料行與您建立 [更新] 查詢時不同的資料行。
下表列出可顯示在 [格線] 窗格中的格線欄。
欄 |
查詢類型 |
描述 |
欄 |
全部 |
顯示用於查詢的資料欄名稱或計算欄的運算式。 此欄已鎖定,以便在您水平捲動時始終可見。 |
別名 |
選取、附加、更新 Make-Table |
指定資料行的替代名稱,或您可以用於計算資料行的名稱。 |
表格 |
選取、附加、更新 Make-Table |
指定相關聯資料欄的表格、視圖、使用者定義函數或子查詢的名稱。 對於計算資料行,此資料行是空白的。 |
輸出 |
選取、附加、Make-Table |
指定資料欄是否出現在查詢輸出中。 附註: 如果資料庫允許,您可以將資料直欄用於排序或搜尋子句,而不將它顯示在結果集中。 |
排序類型 |
選取、附加 |
指定相關聯的資料欄用來排序查詢結果,以及排序是遞增還是遞減。 |
排序次序 |
選取、附加 |
指定用來排序結果集之資料欄的排序優先順序。 當您變更資料欄的排序順序時,所有其他欄的排序順序都會相應地更新。 |
群組依據 |
選取、附加、Make-Table |
指定使用相關聯的資料欄來建立彙總查詢。 只有在您已從「工具」功能表中選擇「分組依據」,或已將 GROUP BY 子句新增至 SQL 窗格時,才會出現此網格欄。 依預設,此直欄的值會設定為 Group By,且該直欄會成為 GROUP BY 子句的一部分。 當您移至此直欄中的儲存格,並選取要套用至相關聯資料直欄的彙總函數時,依預設,結果運算式會新增為結果集的輸出直欄。 |
準則 |
全部 |
指定相關聯資料欄 (篩選) 的搜尋條件。 輸入運算子 (預設值為 “=”) 和要搜尋的值。 將文字值括在單引號中。 如果相關聯的資料直欄是 GROUP BY 子句的一部分,則您輸入的表示式會用於 HAVING 子句。 如果您在 「準則」 方格欄中輸入多個儲存格的值,則產生的搜尋條件會自動與邏輯 AND 連結。 若要為單一資料庫直欄指定多個搜尋條件運算式 (例如, (fname > 'A') AND (fname < 'M'),請將資料直欄新增至 [格線] 窗格兩次,並在 [ 準則 ] 格線欄中針對資料直欄的每一個實例輸入個別值。 |
或。。。 |
全部 |
指定資料欄的其他搜尋條件運算式,連結至具有邏輯 OR 的先前運算式。 您可以按最右邊的 [或...] 欄中的 TAB 鍵,來新增更多 [或...] 格線欄。 |
附加 |
附加 |
指定相關聯資料欄的目標資料欄名稱。 當您建立附加查詢時,查詢Designer會嘗試將來源與適當的目標資料欄進行比對。 如果 Query Designer 無法選擇相符專案,您必須提供資料行名稱。 |
新值 |
更新、附加值 |
指定要放入關聯欄中的值。 輸入常值或運算式。 |
SQL 窗格
SQL 窗格概觀
SQL 窗格會顯示目前查詢的 SQL 陳述式。 當您建置查詢時,SQL 窗格會自動更新並重新格式化,以便於閱讀。
在 SQL 窗格中,您可以:
-
輸入 SQL 陳述式來建立新查詢。
-
根據您在 [圖表] 和 [格線] 窗格中所做的設定,修改 [查詢Designer所建立的 SQL 陳述式。
-
輸入利用 Microsoft SQL Server 特定功能的陳述式。
SQL 窗格中的陳述式
您可以直接在 SQL 窗格中編輯目前的查詢。 當您移至另一個窗格時,Query Designer 會自動格式化您的陳述式,然後變更 [圖表] 和 [格線] 窗格以符合您的陳述式。
附註: 您可以輸入 SQL 陳述式的最佳化工具提示,但 Query Designer 可能會重新格式化它們。
如果您的陳述式無法在 [圖表] 和 [格線] 窗格中表示,且這些窗格可見,則 [查詢Designer會顯示錯誤,然後提供兩個選項:
-
返回 SQL 窗格並編輯陳述式。
-
捨棄您的變更,並回復至最新版本的 SQL 陳述式。
如果您返回 SQL 窗格並繼續編輯陳述式,則 Query Designer 會將其他窗格變暗,以指出它們不再反映 SQL 窗格的內容。
您也可以使用 SQL 窗格來輸入無法在「查詢」Designer中以圖形方式表示的 SQL 陳述式。 在這種情況下,查詢Designer會顯示與偵測到錯誤時相同的行為,它會使 [圖表] 和 [格線] 窗格變暗,以指出它們不代表目前的陳述式。 您可以繼續編輯陳述式,並像執行任何 SQL 陳述式一樣執行它。
附註: 如果您輸入 SQL 陳述式,但接著透過變更 [圖表] 和 [格線] 窗格來進一步變更查詢,則 Query Designer 會重建並重新顯示 SQL 陳述式。 在某些情況下,此動作會導致 SQL 陳述式的建構方式與您最初輸入的陳述式不同 (儘管它一律會產生相同的結果) 。 當您使用涉及數個與 AND 和 OR 連結的子句的搜尋條件時,這種差異尤其可能發生。