关联与联接: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
本站声明:网站内容来源于 *** ,如有侵权,请联系我们,我们将及时处理。