關聯與聯接:Arcgis中屬性表的基數?
ArcGIS中表的relate和join有什么區別??
在兩個表中有匹配的唯一ID時,可以創建一個 表格關聯 或 表聯接 .
A 表聯接 根據唯一ID將一個表中的所有列追加到另一個表中。
但是**表相關**會創建一個全新的表。因此,當您在一個表中選擇記錄時,它將基于所有匹配的唯一ID創建一個臨時表。
你什么時候用relate?什么時候使用join?讓我們用兩個例子來學習。
添加微信好友, 獲取更多信息
復制微信號
具有1:1關系的聯接示例?
聯接適用于1:1關系。因此,當兩個表中都有一條匹配的記錄時,這是使用聯接的適當時間。
例如,我們有一個美國城市的形狀文件。我們也有一個包含城市和球隊名稱的NFL球隊的電子表格。
只要我們沒有兩個同名的城市,這意味著“名稱”在“美國城市”形狀文件中是唯一的。這也意味著我們有一個1:1的關系,因為沒有兩個或更多具有相同唯一ID的行。
這是執行聯接的更佳情況。當您在這兩個表之間創建聯接時,它會將“NFL團隊”列附加到“美國城市”形狀文件中。
在ArcGIS中,我們如何像在美國城市形狀文件中附加NFL團隊名稱那樣執行連接?
首先,單擊表格下拉按鈕,然后選擇“聯接和關聯”>“聯接”。在這里,您必須從兩個表中選擇具有唯一標識符的字段。在我們的例子中,它是“名稱”和“城市”。
如果在聯接后導出此表,則它將成為永久表。這意味著附加的列將保留在新表或功能類中。
將示例與1:m關系關聯?
當一條記錄在另一個表中有多個匹配的ID時,這是一對多關系(1-M)。更好在1-M關系中使用關聯。
例如,假設我們有一個足球隊和球員的列表。每個隊有多個球員,每個隊都是獨一無二的。所以這意味著它是1-M。
一個**表格關聯** 創建一個全新的表。因此,當您在一個表中選擇記錄時,它將基于所有匹配的唯一ID創建一個臨時表。
例如,如果我們選擇休斯頓德克薩斯人隊,只有該隊的球員才會出現在新的表格中。
為了建立一個關系,我們打開“US_Teams”屬性表。首先,您需要單擊屬性表左上角的表下拉按鈕(如下所示)。
從下拉列表中,選擇“聯接和關聯”>“關聯...”,現在,選擇兩個表中都匹配的列。就我們而言,是“ NAME”和“ NAME”。最后,選擇默認名稱“Relate1”或給它另一個名稱。
既然我們已經在這兩個表中確定了唯一的ID,那么我們就可以在足球隊表中選擇球隊。單擊“相關表”>relate1后,將打開一個新表,其中包含所選團隊的所有匹配記錄。
基數:1-1關系對1-M關系?
有三種類型的關系(或基數)。
一對一關系(1-1)
一對多關系(1-m)
多對多關系(M-N)
為了 any type of database ,一對一關系在兩個表中有一個匹配的記錄。接下來,一對多關系在一個表中有多個與另一個表中的單個記錄匹配的記錄。最后,多對多表在兩個表中都有多個匹配的記錄。
在所有情況下,對于任何類型的關系,兩個表中都必須存在唯一標識符(或鍵)。此唯一ID(主鍵)是相關表(外鍵)之間的主鏈接。
ArcGIS中表的表關聯與表聯接?
同時**連接**將屬性附加到表的末尾,**關聯**為所有匹配的記錄創建臨時表。
所有表之間的鏈接基于 基數 (1-1、1-m和m-n)。在兩個表中具有匹配的唯一ID這一原則上,聯接和關聯都是工作。
盡管join對于1-1關系特別有用,但是relate對于1-m關系非常理想。
你對“聯系”和“加入”有什么問題嗎?請在下面發表評論。
來源:開源地理空間基金會中文分會
來源鏈接:https://www.osgeo.cn/post/1842a
本站聲明:網站內容來源于 *** ,如有侵權,請聯系我們,我們將及時處理。