使用查詢管理資料

建立有多個資料來源的查詢

您的瀏覽器不支援視訊。請安裝 Microsoft Silverlight、Adobe Flash Player 或 Internet Explorer 9。

通常,為了取得所需的答案,您需建立從多個資料表或從資料表與查詢的組合收集資訊的查詢。

開始使用聯結

有時,您必須使用來自多個來源 (資料表或查詢) 的資料,才能回答問題。例如,您可能會查看某個區域中有多少客戶訂購了特定的產品。

當您新增多個資料來源時,Access 會使用這些資料來源之間現有、已定義的關聯,或是在它們之間建立聯結以供查詢使用。「聯結」只是查詢中資料來源之間的一種關聯類型。

附註: 聯結是暫時性的,並且只與查詢關聯。如果您經常在資料表之間建立相同的聯結,您可以在它們之間建立永久關聯。

內部聯結

大多數聯結都是「內部聯結」。這是相對於「外部聯結」,在使用外部聯結建立查詢中有相關討論。

內部聯結只有在一種情況下會傳回一個來源中的資料,就是在另一個來源中找到相符的資料時。例如,如果您查詢產品與訂單的相關資訊,您就只會看到有相符訂單的產品資料。

產品與訂單資料表的螢幕擷取畫面

自我聯結

「自我聯結」會聯結兩份相同的資料表或查詢。當聯結的欄位中有相符的值時,您可以使用它來結合來自相同資料表的記錄。

例如,假設您有一個列出貴組織中所有員工 (包括主管) 的 [員工] 資料表。此資料表包含一個 [上司] 欄位,當中包含員工主管的識別碼。

識別碼

姓氏

名字

上司

1

雅婷

5

2

正霖

3

克儀

10

4

美芸

5

5

漢克

2

6

邁可

10

7

邦良

10

8

莉華

10

9

安婕

5

10

梅玲

3

若要尋找某個員工的主管姓名,請在資料表中找出該員工、在 [上司] 欄位中找出主管識別碼,然後在相同的 [員工] 欄位中查詢該主管的識別碼。例如,雅婷的上司是員工識別碼為 5 的主管,亦即鍾漢克。

若要將此工作自動化,請在您的查詢中新增 [員工] 資料表兩次,然後建立自我聯結。當您第二次新增資料來源時,Access 會在第二個執行個體的名稱附加 _1。例如,如果您新增 [員工] 資料表兩次,則第二個執行個體會命名為 Employees_1。若要顯示每一位員工的主管姓名,您需在 [員工] 資料表的 [上司] 欄位與 [員工_1] 資料表的 [員工識別碼] 欄位之間建立聯結。

1.新增資料來源
  • 選取 [建立] > [查詢設計]。

請將您所需的所有資料表和查詢新增為資料來源。(別擔心,如果您忘了某個資料來源,稍後仍有機會新增其他資料來源)。

資料來源可能包括您想要從中顯示資訊的資料表 (例如產品資料表),以及包括含有您需要用來做為準則之資訊的資料表。

請記住,現有的已儲存查詢也是可用的資料來源。例如,如果您已經建立查詢來尋找指定月份的所有訂單,則使用該查詢再加上產品資料表,即可顯示在指定月份中售出的所有產品。

2.聯結相關資料來源
  • 若要自行新增聯結,請從一個資料來源中,將某個欄位拖曳到另一個資料來源中的對應欄位。Access 預設會建立內部聯結。

針對大多數關聯,Access 會建立內部聯結。而且,如果您已指定應該強迫參考完整性,就會將參考完整性納入。但是,在某些情況下,Access 並不會建立您所需的聯結。例如,如果您將現有的查詢新增到新查詢中而尚未建立關聯,Access 並不會自動建立聯結。

3.完成查詢。
  • 依照一般的查詢建立步驟:新增輸出欄位、新增任何準則,然後執行或儲存查詢。若要了解做法,請參閱建立基本查詢

想要更多資訊嗎?

Excel 訓練課程

Outlook 訓練

在這段影片中,您將了解如何使用多個資料來源建立 [選取] 查詢。

您將了解如何使用「聯結」在多個來源之間建立相符。

您也會了解各種可用聯結的類型。

建立使用多個資料來源的 [選取] 查詢所需遵循的基本步驟,與建立使用單一資料來源的 [選取] 查詢相同。

您開啟 [查詢設計工具]、選取您的資料表或查詢,然後新增您的欄位。

不過有一個竅門。

當您查詢資料的多個來源時,您須建立每個資料之間的相符。

例如,若要知道哪些產品是在訂單組中,您必須使訂單與它們的產品相符。

建立這些相符,您會使用所謂的「聯結」。

「聯結」會比較兩個常見欄位中的資料:每個資料來源各一個欄位。

聯結會控制每個欄位中的資料如何相符。

例如,最常見的聯結類型只會傳回一個欄位的資料 (當它在另一個找到相符的值時),而這就是您找出每筆訂單中的產品編號的方法。

另一種聯結類型會傳回一個欄位的「所有」資料,但只傳回另一個欄位的「相符」資料。

而在這個範例中,查詢會顯示哪些訂單不包含指定產品。

現在,當您已建立資料表關聯,Access 也已為每個關聯建立「聯結」。

Access 使用您的關聯做為聯結的「圖樣」,所以在大部分的時候,您的聯結欄位將是您的主索引鍵和外部索引鍵。

不過,也不一定非得是它們。您也可以聯結不相關的來源。

如果您沒有兩個相關的來源,而您將它們新增到 [查詢設計工具],您會看到看似關聯的內容 — 請記得它其實沒有關聯。Access 只是表示它用來做為聯結的「圖樣」的關聯類型。

而只要您在您的資料表或查詢之間有關聯,您就可以從兩個來源新增欄位。

也請注意,我們未新增聯結欄位到設計格線中。因為 Access 會在幕後作業,所以我們不需要這麼做。

您可以執行查詢並獲得結果。

現在讓我們更仔細看看聯結,因為您需要記住幾個重點。

首先,您可以透過按一下滑鼠右鍵或點兩下聯結線,並選取 [連接屬性] 來設定或變更聯結類型。

這些設定控制您的查詢中的聯結類型,而且這些是最常見的聯結類型。

這個選項會建立「內部聯結」。這是傳回兩個資料表的相符資料的聯結類型。

每當您建立關聯時,Access 會建立這種聯結。

第二個選項會建立「左方外部聯結」,這表示您的查詢傳回列於左方的資料表的「所有」資料,以及另一個資料表的「相符」資料。

第三個選項會建立「右方外部聯結」,而您可能已經猜到會發生什麼情況。

查詢會傳回右方資料表的「所有」資料,以及左方資料表的「相符」資料。

當您想要知道未銷售或更一般來說當某事未發生時,您通常會使用外部聯結。

別忘了這些就是三種最常見的聯結類型。您也可以使用「交互聯結」和「不相等聯結」,但這些並不常用。

還有一個關於聯結的重點是,「關聯」和「聯結」並不相同。

「關聯」是一組控制參考完整性的規則:您新增及刪除資料的方式。

「聯結」控制查詢與資料相符的方式。

不過這兩個可能有點類似。

例如,您的關聯可以有多方 — 一和多 — 而您的聯結也可以有多方 — 左方和右方 — 但您只在查詢中使用聯結,而且您可以用無法在關聯中使用的多種方式來使用它們。

例如,您可以刪除聯結而不傷害您的資料庫,這在關聯中是做不到的。

此外,您可以在關聯不存在的位置新增聯結。

例如,您可以將資料表中的欄位與查詢中的欄位聯結,只要這些欄位有相符或相容的資料類型。

現在您了解如何處理聯結,以使用多個資料來源建立選取查詢。您也可以設定或變更聯結類型。而且您了解聯結和關聯之間的相似與差異處。

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×