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

在 Access 中,您可以建立多值欄位,以保存多個值,最多 (100) 。 您也可以建立 [查閱] 欄位,以顯示繫結至另一個資料來源中值的使用者易記值。 當您查詢查閱或多值欄位時,有獨特的考量。 如需詳細資訊,請參閱 建立或刪除多值欄位建立或刪除查閱欄位

本文內容

檢視查詢中 Lookup 欄位的繫結值

依預設,查閱欄位的顯示值會自動顯示在查詢資料工作表檢視中。 當您建立查詢時,您可以覆寫此行為,以便改為顯示繫結值。 在此範例中,假設您想要在「查閱」新英格蘭州名稱的 Headquarters 資料表中查看 Lookup 欄位的繫結值。

查閱欄位表格
  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 HeadquartersNewEngland 資料表。

    兩個表格應該連接起來。

    查閱欄位結構描述

    如需詳細資訊,請參閱 聯結資料表和查詢

  3. 將 a 欄位與 [查閱] 欄位一起拖曳至查詢設計網格。 在此範例中,新增 CityNEState 欄位。

  4. 按一下 [查閱] 欄位,然後在 [ 設計 ] 索引標籤的 [顯示/隱藏 ] 群組中,按一下 [屬性表]。 在此範例中,使用 NEState 欄位。

  5. 在屬性表中,選取 [查閱] 索引標籤,然後在 [顯示控制項] 屬性中,選取 [文字方塊]。

    在查詢設計中顯示控制項屬性

結果   現在,當您在資料工作表檢視中檢視查詢時,您會看到顯示值的對應繫結值。

顯示 Bound 值的查詢結果

頁面頂端

在查詢中使用查閱欄位的顯示值

當您建立「查閱」欄位時,會在「繫結」值與「顯示」值之間建立聯結。 雖然您無法直接在查詢中使用 Display 值,但您可以使用其他資料來源中的對應值。 在此範例中,假設您要在查詢中使用 Headquarters 資料表中 [查閱] 欄位 NEState 的顯示值作為準則。

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 HeadquartersNewEngland 資料表。

    兩個表格應該連接起來。 如需詳細資訊,請參閱 聯結資料表和查詢

  3. 將您要使用的欄位拖曳至查詢方格。 在此範例中,將 City 從 Headquarters 資料表拖曳至第一欄,將 NEState 從 Headquarters 資料表拖曳至第二欄,並將 StateName 從 NewEngland 資料表拖曳至第三欄。

  4. 清除查詢方格中 StateName[顯示] 核取方塊。

  5. 在查詢方格的 [StateName] 底下,在 [準則] 資料列中輸入 Vermont

    顯示查閱欄位的 [繫結] 值的查詢方格

    查詢準則是以 StateName 資料行為基礎,當然與 [顯示] 值 NEState 相同,但不會顯示在 [資料工作表檢視] 中。

  6. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    僅顯示包含 佛蒙特州 的列。

查詢結果

頁面頂端

在查詢中使用多值欄位

當您在查詢中顯示多值欄位時,您可以顯示完整的多值欄位,其中包含一列上以逗號分隔的所有值,或平面化資料,每個值都有個別的列。 例如,假設您有一個 [問題] 表格,其中包含每個問題的 [標題] 欄位,以及一個 [指派給 ] 多值欄位,用於將問題指派給人員。

在一列中顯示多值欄位中的所有值

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將欄位拖曳至查詢設計方格。 在此範例中,拖曳 [標題] 欄位和 [指派至 ] 多值欄位。

  4. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    如您所料,一欄會顯示 [標題] 欄位,而第二欄會顯示 [指派至 ] 多值欄位:

具有非平面化結果的多值欄位查詢

在平面化檢視) (一列顯示多值欄位的每個值

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將欄位 U 拖曳至查詢方格。 在此範例中,拖曳 [標題] 欄位和 [AssignedTo.Value ] 多值欄位。

    格式 <Fieldname>。Value,將 Value 屬性附加為字串 。Value新增至AssignedTo 欄位。

  4. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    資料會平面化,以便重複 [標題] 欄位,且 [指派給 ] 多值欄位中的每個值都會顯示在對應的列中:

具有平面化結果的多值欄位查詢

頁面頂端

將準則新增至查詢中的多值欄位

在查詢方格中不同方格欄中放置相同的準則,會對查詢的結果產生重大影響。

新增準則,以一列顯示多值欄位中的所有值

Access 會先建立結果集,然後新增準則。

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將欄位 U 拖曳至查詢方格。 在此範例中,拖曳 [標題] 欄位、[ AssignedTo ] 多值欄位和 [AssignedTo.Value ] 多值欄位。

  4. 清除查詢方格中 AssignedTo.Value[顯示] 核取方塊。

  5. 在查詢方格的 [AssignedTo.Value] 底下的 [準則] 資料列中,輸入 “NOT ”David Hamilton“。

    具有直接 [查閱] 欄位的查詢設計方格

    查看 SQL 檢視會很有幫助:

    SELECT Title, AssignedTo FROM Issues WHERE NOT AssignedTo.Value = "David Hamilton";

  6. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    未指派給 David Hamilton 的三個問題會以預設值顯示。

使用 <Fieldname> 的多值欄位結果

新增準則,以一列顯示多值欄位中的每個值, (平面檢視)

Access 會先建立平面化的結果集,然後新增準則。

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將欄位 U 拖曳至查詢方格。 在此範例中,拖曳 [標題] 欄位和 [AssignedTo.Value ] 多值欄位。

  4. 在查詢方格的 [AssignedTo.Value] 底下的 [準則] 資料列中,輸入 NOT “David Hamilton”。

    使用 查詢設計方格。查閱欄位的值格式

    查看 SQL 檢視會很有幫助:

    SELECT Issues.Title, AssignedTo.Value FROM Issues WHERE NOT AssignedTo.Value = "David Hamilton"

  5. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    每個未指派給 David Hamilton 的問題都會以平面化值顯示。

使用 <Fieldname> 的多值欄位的結果。價

頁面頂端

將多個準則新增至查詢中的多值欄位

有時,您需要在多值欄位內搜尋多個值的相符專案。 例如,假設您想要查看 「Kelly Rollin」 和 「Lisa Miller」 都屬於 [指派給 ] 欄位中值的問題

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將欄位 U 拖曳至查詢方格。 在此範例中,拖曳 [標題] 欄位和 [指派至 ] 多值欄位。

  4. 在查詢方格的 [指派給] 底下的 [準則] 資料列中,輸入 “Kelly Rollin” 和 “Lisa Miller”。

  5. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    分配給“Kelly Rollin”和“Lisa Miller”的這兩個問題被顯示出來。

顯示多重值欄位中 AND 用法的查詢結果

頁面頂端

將查詢中的多值欄位分組和計算

若要對儲存在多值欄位中的值執行計算、分組和排序,請使用 <欄位名稱>。值欄位。 如需群組查詢的詳細資訊,請參閱 使用查詢來計算資料。

計算指派給每個人的問題數目

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將您要使用的欄位拖曳至查詢方格。 在此範例中,將 AssignedTo.Value 拖曳至第一欄,並將 Title 拖曳至第二欄。

  4. [設計] 索引標籤上,按一下 [顯示/隱藏] 群組中的 [合計]

    [總計] 資料列會出現在查詢方格中。 預設情況下,分組依據會顯示在查詢中每個欄位下的 [總計] 儲存格中。

  5. 在查詢方格的 [標題] 底下,在 [ 總計 ] 資料列中,按一下 [計數]。

  6. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    每人指派的問題計數會顯示在平面檢視中。

計算指定給每個人之議題數的查詢

計算分配給每個問題的人數

  1. [設計檢視] 中開啟查詢。

  2. 在此範例中,新增 Issues 資料表。

  3. 將您要使用的欄位拖曳至查詢方格。 在此範例中,將 Title 拖曳至第一欄,並將 AssignedTo 拖曳至第二欄。

  4. [設計] 索引標籤上,按一下 [顯示/隱藏] 群組中的 [合計]

    [總計] 資料列會出現在查詢方格中。 依預設,「分組依據」會顯示在查詢中「標題」欄位下的「總計」儲存格中。 運算式預設會顯示在 [指派至] 欄位下的 [總計] 儲存格中,因為您無法直接對多值欄位執行 [分組依據] 作業,只能> <[欄位名稱]。值欄位。

  5. 在查詢方格的 [指派給] 底下,在 [ 總計 ] 資料列中,按一下 [計數]。

  6. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

結果    每個問題指派的人數會顯示在平面檢視中。

顯示每個議題人數的查詢結果

頁面頂端

將附加查詢與多值欄位搭配使用

您可以使用附加查詢,將單一值插入多值欄位。 例如,假設您要將「Tom Michaels」新增至「問題」資料表中的「指派至」多值欄位。

附註   這是唯一適用於多值欄位的附加查詢類型。

  1. [設計檢視] 中開啟查詢。

  2. 新增 [問題] 表格。

  3. 「設計」標籤上,按一下「附加」。

  4. 在 [ 附加 ] 對話方塊中,選取 [問題],然後按一下 [ 確定]。

  5. 在 [設計方格] 的 [ 附加至 ] 資料列中,選取 [AssignedTo.Value]。

  6. 在「設計格線」的 「欄位」 列中,輸入「Tom Michaels」。

  7. 若要將附加作業限制為特定問題,請將欄位新增至 [設計] 方格,例如 [標題],從 [附加至] 資料列中移除 [標題],然後輸入諸如「問題 3」之類的準則。

  8. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

    Access 可能會要求您確認是否附加所選列。 按一下「 」以插入資料列,或按一下「 」以取消。

結果    「Tom Michaels」現在已新增至問題 3 的 AssignedTo 欄位。

重要    您無法使用參照包含多值欄位之資料表的附加查詢。 例如,下列查詢無效:

INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;

頁面頂端

將更新查詢與多值欄位搭配使用

您可以使用「更新」查詢,將多值欄位中的單一值變更為另一個值。 在此範例中,您想要更新 AssignedTo 多值欄位,以將 “Kelly Rollin” 取代為 “Lisa Miller”。

  1. [設計檢視] 中開啟查詢。

  2. 新增 [問題] 表格。

  3. 「設計」頁籤上,按一下「更新」。

  4. AssignedTo.Value 拖曳至 [查詢] 方格。

  5. 「更新為 」列中,輸入「Lisa Miller」。

  6. 「準則」 列中,輸入「Kelly Rollin」。

  7. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

    Access 可能會要求您確認是否附加所選列。 按一下「 」以插入資料列,或按一下「 」以取消。

結果    Lisa Miller 取代了所有對應問題的 AssignedTo 欄位中的 Kelly Rollin。

頁面頂端

將 Delete 查詢與多值欄位搭配使用

當您使用包含多值欄位的資料表時,您可以使用刪除查詢來刪除多值欄位中包含特定值的記錄,或從資料表中所有記錄中的多值欄位中刪除特定值。 在下列範例中,假設您要從「問題」表格中刪除「David Hamilton」。

重要    當您使用刪除查詢刪除包含資料的多值欄位時,您會永久遺失該資料,無法復原刪除。 因此,您應該先備份資料庫,再刪除任何資料表欄位或其他資料庫元件。

從所有記錄的多值欄位中刪除特定值

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

  2. 新增 [問題] 表格。

  3. [設計檢視] 中開啟查詢。

  4. [設計 ] 索引標籤上,按一下 [刪除]。

  5. 「準則」 列中,輸入「David Hamilton」。

  6. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

    Access 可能會要求您確認是否要刪除記錄。 按一下 「是 」以刪除記錄,或按一下 「否 」以取消。

結果    大衛·漢密爾頓因所有相應問題而被刪除。

刪除在多值欄位中包含特定值的記錄

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

  2. 新增 [問題] 表格。

  3. [設計檢視] 中開啟查詢。

  4. [設計] 索引標籤上,按一下 [刪除群組]。

  5. 在 [ 設計 ] 索引標籤的 [結果] 群組中,按一下 [檢視 ] 底下的箭號,然後按一下 [SQL 檢視]。

  6. 輸入下列 SQL 陳述式:

    DELETE FROM Issues WHERE (((Issues.AssignedTo.Value)="David Hamilton"));

    附註    在此情況下,您只能使用 SQL 陳述式,而不能使用「設計」網格。 如果您切換至 [設計方格] 檢視,Access 會在 DELETE 陳述式之後新增星號 (*) ,您應該從 SQL 檢視中移除該星號。

  7. 在 [設計] 索引標籤上的 [結果] 群組中,按一下 [執行]。

    Access 可能會要求您確認是否要刪除記錄。 按一下 「是 」以刪除記錄,或按一下 「否 」以取消。

結果    指派 David Hamilton 的所有問題都會被移除。

頁面頂端

Need more help?

Want more options?

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