Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

使用查詢可讓您更輕鬆地檢視、新增、刪除或變更 Access 資料庫中的數據。 使用查詢的一些其他原因:

  • 篩選特定準則 (條件以快速尋找特定數據)

  • 計算或摘要數據

  • 自動化數據管理工作,例如週期性檢閱最新的數據。

查詢可協助您尋找及使用數據

在設計完善的資料庫中,您想要透過表單或報表顯示的資料通常位於多個資料表中。 查詢可以從各種數據表擷取資訊,並將它組合起來,以顯示在窗體或報表中。 查詢可以是資料庫的數據結果要求,或是數據的動作要求,也可以是兩者都要求。 查詢可以為您提供簡單問題的答案、執行計算、合併不同數據表的數據、新增、變更或刪除資料庫中的數據。 由於查詢非常多功能,因此查詢有許多種類型,因此您可以根據工作建立一種查詢類型。

主要查詢類型

使用

請選取

用於擷取資料表中的資料或執行計算。

動作

新增、變更或刪除資料。 每個工作都有特定類型的動作查詢。

建立選取查詢

如果您只想要檢閱數據表中特定欄位的數據,或同時檢閱多個數據表中的數據,或是只根據特定準則查看數據,您就可以選擇選取查詢類型。 如需詳細資訊,請參閱 建立簡單的選取查詢

檢閱選取欄位中的數據

例如,如果您的資料庫有一個含有大量產品相關信息的數據表,而您想要檢閱產品清單及其價格,以下說明如何建立選取查詢,只傳回產品名稱和個別的價格:

  1. 開啟資料庫,然後在 [ 建立] 索引 標籤上,按兩下 [查詢設計]

  2. 在 [ 數據表] 索引 標籤上,按兩下 [產品] 資料表。

  3. 在 [產品] 資料表中,假設您有 [產品名稱] 和 [列表價格] 字段。 按兩下 [產品名稱 ] 和 [列表價格] ,將這些字段新增至查詢 設計格線。

  4. 在 [ 查詢設計] 索引 標籤上,按兩下 [ 執行]。 查詢會執行,並顯示產品清單及其價格。

頁面頂端

同時檢閱多個相關數據表的數據

例如,如果您有銷售食物專案的商店資料庫,而您想要檢閱居住在特定城市之客戶的訂單。 假設訂單數據和客戶相關數據分別儲存在名為「客戶」和「訂單」的兩個數據表中。 如果每個數據表都有 [客戶標識符] 字段,這會構成兩個數據表之間 一對多關聯性 的基礎。 您可以使用下列程式,建立查詢來傳回特定城市的客戶訂單,例如「拉斯加維加」:

  1. 開啟資料庫。 在 [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]

  2. 在 [ 數據表] 索引 標籤上,按兩下 [客戶訂單]

    請注意,此行 (稱為聯結) ,會連接 [客戶] 數據表中的 [標識符] 字段和 [訂單] 數據表中的 [客戶標識符] 字段。 此行會顯示兩個數據表之間的關聯。

  3. 在 [客戶] 數據表中,按兩下 [公司和城市],將這些字段新增至查詢設計網格線。

  4. 在查詢設計網格線的 [ 城市 ] 欄中,清除 [顯示] 中的複選框。

  5. 在 [城市] 欄的 [準則] 列中,輸入「拉斯加索引標籤」

    清除 [顯示] 複選框可防止查詢在結果中顯示城市,而在 [準則] 列中輸入 [拉斯維加斯] 則指定您只想查看 [城市] 字段值為 [拉斯加維加] 的記錄。 在此情況下,查詢只會傳回位於拉斯加維加的客戶。 您不需要顯示欄位就能使用準則。

  6. 在 [訂單] 數據表中,按兩下 [ 訂單標識符 ] 和 [ 訂單日期 ],將這些欄位新增到查詢設計網格線的下兩欄。

  7. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]。 查詢會執行,然後顯示在拉斯加維加的客戶訂單清單。

  8. 按下 CTRL+S 儲存查詢。

頁面頂端

建立參數查詢

如果您經常想要執行特定查詢的變化,請考慮使用參數查詢。 當您執行參數查詢時,查詢會提示您輸入域值,然後使用您提供的值來建立查詢的準則。

從先前的範例繼續,您還原到建立選取查詢以傳回位於拉斯加維加的客戶訂單,您可以修改選取查詢,提示您在每次執行查詢時指定城市。 若要追蹤,請開啟您在上一個範例中建立的資料庫:

  1. 在 [導航窗格] 中,以滑鼠右鍵按下您在上一節) 建立的 [ 依城市 排序] 查詢 (,然後按下快捷方式功能表上的 [ 設計檢視 ]。

  2. 在查詢設計網格線的 [城市] 欄的 [ 準則 ] 列中,刪除 [拉斯加維加],然後輸入 [適用於哪個城市?]

    [哪個城市?] 字串是您的參數提示。 方括弧表示您希望查詢要求輸入,而這個案例中的文字 (為 哪個城市?) 這是參數提示顯示的問題。

    附註: 兩個期間都 () 或驚嘆號 () 可以在參數提示中當做文字使用。

  3. 選取 [ 顯示 城市] 欄列中的複選框,查詢結果便會顯示城市。

  4. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]。 查詢會提示您輸入城市值。

  5. 輸入 「紐約」,然後按 ENTER 查看紐約客戶的訂單。

    如果您不知道可以指定哪些值,該怎麼辦? 您可以使用通配符做為提示的一部分:

  6. 在 [常用] 索引標籤的 [檢視] 群組中,按一下 [檢視],然後按一下 [設計檢視]。

  7. 在查詢設計網格線的 [城市] 欄的 [準則] 列中,輸入 Like [適用於哪個城市?]&“*”

    在此參數提示中, Like 關鍵詞、音量和 (&) ,以及以引號括住的星號 * (*) 可讓使用者輸入包括通配符在內的字元組合,以傳回各種結果。 例如,如果使用者類型 *,查詢會傳回所有城市;如果使用者類型 為 L,查詢會傳回以字母 「L;」 開頭的所有城市,如果使用者類型 *s*,查詢會傳回包含字母 「s」 的所有城市。

  8. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下[ 執行],然後在查詢提示字元中輸入 [新增],然後按 ENTER。

    查詢會執行,然後顯示紐約客戶的訂單。

指定參數資料類型

您也可以指定參數應該接受哪些類型的資料。 您可以設定任何參數的資料類型,但務必要設定數值、貨幣或日期/時間資料的資料類型。 當您指定參數應接受的資料類型時,使用者就可在輸入錯誤的資料類型時,看見比較有用的錯誤訊息,例如,必須輸入貨幣資料而不是文字。

如果將參數設定為接受文字資料,則任何輸入項目都會解譯成文字,且不會顯示任何錯誤訊息。

若要指定查詢中參數的數據類型,請使用下列程式:

  1. 在 [設計檢視] 中開啟查詢時,請在 [ 查詢設計 ] 索引標籤上,按兩下 [ 顯示/隱藏 ] 群組中的 [ 參數]

  2. [查詢參數] 對話方塊的 [參數] 資料行中,為您想要指定資料類型的每一個參數鍵入提示。 請務必確認每個參數都符合您在查詢設計格線的 [準則] 資料列中使用的提示。

  3. [資料類型] 資料行中,選取每個參數的資料類型。

如需詳細資訊,請參閱 在執行查詢時使用參數要求輸入

頁面頂端

建立合計查詢

數據工作表中的 [合計] 列非常實用,但若是較複雜的問題,請使用合計查詢。 合計查詢是選取查詢,可讓您分組及摘要數據,例如您想要查看每個產品的總銷售額。 在合計查詢中,您可以使用 Sum 函數 (匯總函數) ,查看每個產品的總銷售額。

使用下列程式來修改您在上一個範例中建立的產品小計查詢,以便摘要產品的產品小計。

  1. 在 [常 用] 索引 標籤上,按兩下 [ 檢視 > 設計檢視]

    產品小計查詢隨即在 [設計視圖] 中開啟。

  2. 在 [ 查詢設計] 索引 標籤的 [ 顯示/隱藏 ] 群組中,按兩下 [ 合計]

    [合計] 列會顯示在查詢設計網格線中。

附註: 雖然它們的名稱相似,但設計網格線中的 [ 合計 ] 列和數據工作表中的 [ 合計 ] 列並不相同:

  • 您可以在設計網格線中使用 [ 合計] 列 ,依域值分組。

  • 您可以新增數據工作表 合計 列至合計查詢的結果。

  • 當您在設計網格線中使用 [ 合計 ] 列時,必須為每個字段選擇匯總函數。 如果您不想對欄位執行計算,可以依欄位分組。

  • 在設計網格線的第二欄的 [ 合計 ] 列中,從下拉式清單中選取 [ 加總 ]。

  • 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]。 查詢會執行,然後顯示含有小計的產品清單。

  • 按下 CTRL+S 儲存查詢。 讓查詢保持開啟。

如需詳細資訊,請參閱 使用 [合計] 列在數據工作表中顯示欄合計

頁面頂端

根據您的數據進行計算

您通常不會使用數據表來儲存計算值,例如小計,即使這些值是以相同資料庫中的數據為基礎,因為如果根據變更計算的值,計算值可能會變得過時。 例如,您不會將某人的年齡儲存在數據表中,因為您每年都必須更新值;您改為儲存該人員的出生日期,然後使用查詢來計算該人員的年齡。

例如,如果您有一個資料庫供您想要銷售的部分產品使用。 此資料庫有一個名為 [訂單詳細數據] 的數據表,其中包含欄位中的產品相關信息,例如每個產品的價格和數量。 您可以使用查詢來計算小計,該查詢會將每個產品的數量乘以該產品的單價、將每個產品的數量乘以單價和該產品的折扣,然後再減去單價總額的總折扣。 如果您在上一個範例中建立了範例資料庫,請將它開啟並遵循:

  1. 在 [建立] 索引標籤上,按一下 [查詢設計]。

  2. 在 [ 數據表] 索引 標籤上,按兩下 [ 訂單詳細數據]

  3. 在 [訂單詳細數據] 數據表中,按兩下 [產品標識符 ],將此字段新增到查詢設計網格線的第一欄。

  4. 在網格線的第二欄中,以滑鼠右鍵按兩下 [ 功能變數 ] 列,然後按兩下快捷方式選單上的 [ 放]。

  5. 在 [ 放] 方塊中,輸入或貼上下列專案 :小計: ([數量]*[單價]) - ([數量]*[單價]*[折扣])

  6. 按一下 [確定]。

  7. 在 [ 查詢設計] 索引 標籤上,按兩下 [ 執行]。 查詢會執行,然後顯示每個訂單的產品和小計清單。

  8. 按 CTRL+S 儲存查詢,然後命名查詢 產品小計

如需詳細資訊,請參閱 使用 [合計] 列在數據工作表中顯示欄合計

頁面頂端

顯示摘要或匯總數據

當您使用數據表記錄交易或儲存定期發生的數值數據時,能夠以匯總方式檢閱該數據是很實用的,例如加總或平均值。 在 Access 中,您可以將 [合計] 列新增至 資料工作表。 合計列是位於數據工作表底部的列,可以顯示執行中的合計或其他匯總值。

  1. 執行您先前建立的產品小計查詢,並將結果保持在 資料工作表檢視中開啟。

  2. 按一下 [常用] 索引標籤上的 [合計]。 新的列會顯示在數據工作表的底部,第一欄中包含 「 合計 」一詞。

  3. 按兩下資料工作表最後一列名為 [ 合計] 的儲存格。

  4. 按兩下箭號以檢視可用的匯總函數。 因為欄包含文字數據,因此只有兩個選項: [無 ] 和 [計數]

  5. 取 [計數]。 單元格內容會從 [ 合計 ] 變更為欄值計數。

  6. 按兩下第二欄) (的相鄰儲存格。 請注意,儲存格中會出現箭號。

  7. 按兩下箭號,然後按兩下 [ 加總]。 欄位會顯示欄值的總和。

  8. 讓查詢在 [數據工作表檢視] 中保持開啟。

頁面頂端

建立交叉資料表查詢

現在假設您想要檢閱產品小計,但也想要逐月匯總,因此每一列都會顯示產品的小計,而每一欄都會顯示一個月的產品小計。 若要顯示產品的小計並顯示一個月的產品小計,請使用 交叉資料表查詢。

您可以再次修改產品小計查詢,讓查詢傳回每月小計的產品小計和數據行列。

  1. 在 [常用] 索引標籤的 [檢視] 群組中,按一下 [檢視],然後按一下 [設計檢視]。

  2. 在 [ 查詢設定] 群組中,按兩下 [ 新增數據表]

  3. 按兩下 [ 訂單],然後按兩下 [ 關閉]

  4. 在 [ 查詢設計] 索引 標籤的 [ 查詢類型] 群組中,按兩下 [ 交叉表]。 在設計網格線中,會隱藏 [ 顯示 ] 列,並顯示 交叉表列

  5. 在設計網格線的第三欄中,以滑鼠右鍵按兩下 [ 功能變數 ] 列,然後按兩下快捷方式選單上的 [ 放]。 [ 縮放] 方塊隨即開啟。

  6. 在 [ 縮放 ] 方塊中,輸入或貼上下列專案: 月份:「月份」& DatePart (“m”,[訂單日期])

  7. 按一下 [確定]。

  8. 交叉表列 中,從下拉式清單中選取下列值:第一欄的列 、第二欄的 ,以及第三欄的 欄標題

  9. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]。 查詢會執行,然後顯示依月份匯總的產品小計。

  10. 按下 CTRL+S 儲存查詢。

    如需交叉表查詢的詳細資訊,請參閱 使用交叉表查詢讓摘要數據更容易閱讀

頁面頂端​​

建立產生資料表查詢

您可以使用製作數據表查詢,從儲存在其他數據表中的數據建立新數據表。

例如,假設您要將芝加哥訂單的數據傳送給使用 Access 準備報表的芝加哥商務合作夥伴。 您想要限制要傳送至芝加哥訂單特定數據的數據,而不是傳送您所有的訂單數據。

您可以建立包含 Chicago 訂單資料的選取查詢,然後使用選取查詢,使用下列程式建立新資料表:

  1. 從上一個範例開啟範例資料庫。

    若要執行資料表查詢,您可能需要啟用資料庫內容。

    附註: 如果您在功能區下方看到啟用資料庫的相關訊息,請按兩下 [ 啟用內容]。如果您的資料庫已經位於信任的位置,您就不會看到訊息列。

  2. [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]

  3. 按兩下 [ 訂單詳細數據 ] 和 [ 訂單]

  4. 在 [ 訂單] 數據表中,按兩下 [客戶標識符 ] 和 [ 出貨城市 ],將這些欄位新增至設計網格線。

  5. 在 [ 訂單詳細數據 ] 數據表中,按兩下 [ 訂單標識符]、[ 產品標識符]、[ 數量]、[ 單價] 和 [ 折扣 ],將這些字段新增至設計網格線。

  6. 在設計網格線的 [ 出貨城市 ] 欄中,清除 [ 顯示] 列 中的方塊。 在 [ 準則] 列中,輸入 「芝加哥」 (包含單引號) 。 使用查詢結果建立數據表之前,請先確認結果。

  7. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]

  8. 按 Ctrl + S 以儲存查詢。

  9. 在 [ 查詢名稱] 方 塊中,輸入 Chicago Orders Query,然後按兩下 [ 確定]

  10. 在 [常用] 索引標籤的 [檢視] 群組中,按一下 [檢視],然後按一下 [設計檢視]。

  11. 在 [ 查詢設計] 索引 標籤的 [ 查詢類型] 群組中,按兩下 [ 建立資料表]

  12. 在 [ 製作表格 ] 對話框的 [ 數據表名稱 ] 方塊中,輸入 芝加哥訂單,然後按兩下 [ 確定]

  13. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]

  14. 在確認對話框中,按兩下 [ ],然後查看 [導航窗格] 中顯示的新資料表。

    附註: 如果已有與您所指定名稱相同的數據表,Access 會先刪除該數據表,再執行查詢。

如需使用數據表查詢的詳細資訊,請參閱 建立數據表查詢

頁面頂端

建立追加查詢

您可以使用追加查詢從一或多個數據表擷取數據,並將該數據新增至另一個數據表。

例如,假設您建立了要與芝加哥商務夥伴共享的數據表,但您發現該關聯也適用於[機市] 區域中的用戶端。 您想要在與您的關聯共享數據表之前,先將包含[收到者] 區域數據的列新增至數據表。 您可以使用下列程式,將[體工區資料] 新增至 [芝加哥訂單] 資料表:

  1. 開啟您先前在 [設計視圖] 中建立的名為 「Chicago Orders Query」的查詢。

  2. 在 [ 查詢設計] 索引 標籤的 [ 查詢類型] 群組中,按兩下 [ 附加]。 [ 附加] 對話框隨即開啟。

  3. 在 [ 附加 ] 對話框中,按兩下 [ 表格名稱 ] 方塊中的箭號,從下拉式清單中選取 [芝加哥訂單 ],然後按兩下 [ 確定]

  4. 在設計網格線的 [出貨城市] 欄的 [ 準則 ] 列中,刪除 「芝加哥」,然後輸入 「芝加哥」

  5. 在 [ 附加至 ] 列中,為每一欄選取適當的欄位。

    在此範例中, [附加至 ] 列值應符合 [ 字段 列] 值,但附加查詢不需要此值即可運作。

  6. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]

附註: 執行傳回大量資料的查詢時,可能會出現錯誤訊息,指出您無法復原該查詢。 請試著將記憶體區段上限增加到 3MB,查詢才能夠執行。

如需新增查詢的詳細資訊,請參閱透過新增查詢將記錄新增至資料表

頁面頂端

建立更新查詢

您可以使用更新查詢來變更數據表中的數據,也可以使用更新查詢來輸入準則,指定應該更新哪些數據列。 更新查詢可讓您有機會在執行更新之前檢閱更新的數據。

重要: 宏指令查詢無法復原。 您應該考慮使用更新查詢備份任何要更新的數據表。

在上一個範例中,您將數據列新增至芝加哥訂單數據表。 在 [芝加哥訂單] 數據表中,[產品標識符] 字段會顯示 [數值產品標識符]。 若要讓報表中的數據更有用,您可以使用產品名稱取代產品標識碼,請使用下列程式:

  1. 在 [設計視圖] 中開啟 [芝加哥訂單] 數據表。

  2. 在 [產品識別符] 列中,將 [數據類型] 從 [數位 ] 變更為 [文字]

  3. 儲存並關閉芝加哥訂單數據表。

  4. [建立] 索引標籤上,按一下 [查詢] 群組中的 [查詢設計]

  5. 按兩下 [芝加哥訂單產品]

  6. 在 [ 查詢設計] 索引 標籤的 [ 查詢類型] 群組中,按兩下 [ 更新]

  7. 在設計網格線中, [排序 ] 和 [顯示 列] 會消失,並出現 [ 更新至] 列

  8. 在 [ 芝加哥訂單 ] 數據表中,按兩下 [產品標識符 ],將此字段新增至設計網格線。

  9. 在設計網格線中,於 [產品標識符] 欄的 [更新至] 列中,輸入或貼上下列內容:[產品]。[產品名稱]

    提示: 您可以使用更新查詢,在 [更新至] 資料列中使用空字串 (“”) 或 NULL 來刪除域

  10. 在 [ 準則] 列中,輸入或貼上下列內容: [產品標識符] 例如 ([產品]。]ID])

  11. 您可以在 [數據工作表檢視] 中檢視查詢,藉此檢閱更新查詢會變更哪些值。

  12. 在 [ 設計] 索引 標籤上,按兩下 [ 檢視 > 數據工作表檢視]。 查詢會傳回即將更新的產品標識符清單。

  13. 在 [ 查詢設計] 索引 標籤上,按兩下 [ 執行]

    當您開啟 [芝加哥訂單] 數據表時,您會看到 [產品標識符] 字段中的數值已由 [產品] 數據表中的產品名稱取代。

如需關於更新查詢的詳細資訊,請參閱建立和執行更新查詢

頁面頂端

建立刪除查詢

您可以使用刪除查詢來刪除資料表中的數據,也可以使用刪除查詢來輸入準則來指定應該刪除哪些數據列。 刪除查詢可讓您在執行刪除之前,檢閱要刪除的列。

例如,假設您準備從上一個範例傳送「芝加哥訂單」數據表給您的芝加哥商務夥伴,您會注意到有些數據列包含一些空白字段。 您決定在傳送表格之前先移除這些數據列。 您可以只開啟資料表並手動刪除資料列,但如果您有許多要刪除的列,而且您有應刪除數據列的明確準則,您可能會發現使用刪除查詢很有説明。

您可以使用下列程式,使用查詢來刪除芝加哥訂單資料表中沒有訂單識別碼值的資料列:

  1. 在 [建立] 索引標籤上,按一下 [查詢設計]。

  2. 按兩下 [芝加哥訂單]

  3. 在 [ 查詢設計] 索引 標籤的 [ 查詢類型] 群組中,按兩下 [ 刪除]。 在設計網格線中, [排序 ] 和 [顯示 列] 消失,並出現 [刪除] 列

  4. 在 [ 芝加哥訂單] 數據表中,按兩下 [訂單標識符 ],將其新增至網格線。

  5. 在設計網格線的 [訂單標識符] 欄的 [ 準則 ] 列中,輸入 Is Null

  6. 在 [ 查詢設計] 索引 標籤的 [ 結果 ] 群組中,按兩下 [ 執行]

如需刪除查詢的詳細資訊,請參閱 建立和執行刪除查詢

頁面頂端

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。