ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

连接 Info 表

在 Advanced 许可等级下可用。

  • 摘要
  • 插图
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

基于共享项连接两个表的项定义和值。连接将涉及通过两个表的公共属性或项将一个表的项(字段)追加到另一个表中项。连接通常用于将更多的属性附加到地理图层的属性表中。

当“关联项”的值和“起始项”的值相等时,“连接 Info 表”中的记录会与“输入 Info 表”中的各条记录匹配。两条记录中的项目值随后会被复制到输出表。

了解有关“连接 Info 表”工作原理的详细信息

插图

Join Info Tables illustration

用法

  • 要保持要素 INFO 表的完整性,请不要在“输入 INFO 表 ID”前插入项(当“输出 INFO 表”等于“输入 INFO 表”时)。

  • 建议您使用要连接的两个表中定义相同的“关联项”。

  • 如果在两个表中遇到相同的项名称,则将保留“输入 INFO 表”中的项并排除“连接 INFO 表”中的项。

  • 为避免信息和冗余存储数据丢失,请确保两个表中的项一对一匹配。如果不存在一对一的对应关系,则会出现以下某种情况:

    • 如果一条“输入 Info 表”记录匹配多条“连接 Info 表”记录,则只会将一个匹配保存到“输出 Info 表”中。保存的记录可能是也可能不是文件的第一条匹配记录,具体取决于此项是否已建立索引。
    • 如果“输入 Info 表”记录与“连接 Info 表”中的任何记录都不匹配,则相应“输出 Info 表”记录中的“连接 Info 表”的项目值将被设置为零或留空。
    • 如果一条“连接 Info 表”记录匹配多条“输入 Info 表”记录,则“连接 Info 表”记录将与每条匹配的“输入 Info 表”记录合并。
    • 如果“连接 Info 表”记录与“输入 Info 表”中的任何记录都不匹配,则“输出 Info 表”将不含此记录。

  • 指定“起始项”时,请不要在任何要素 INFO 表中的“输入 Info 表 ID”之前插入要连接的项。

  • 如果“输入 Info 表”和“连接 Info 表”具有相同的字段,则“连接 Info 表”将返回“连接文件中没有非重复项”消息。这表示没有新项要连接。

  • 执行速度取决于所连接文件的组织结构。一般来说,最快的匹配操作是 LINK,其次是具有索引“关联项”的 LINEAR,最后是 ORDERED。尽管 LINK 是最快的选项,但在大多数情况下均不适用。

  • 如果“关联项”已建立索引,则 LINEAR 选项将得到优化。

  • “输入 Info 表”和“连接 Info 表”可以包含重新定义的项。大多数情况下,重新定义的项可以用作“关联项”。当重新定义的项包含不同类型的数值项时,不推荐将其用作“关联项”。此类重新定义项可能会产生不合理或不可转换的编号。

  • 如果“连接 Info 表”针对每个“关联项”值包含多条记录,则将使用“连接 Info 表”遇到的第一条记录。这仅适用于 LINEAR 选项。

  • “关联项”的替代项名称不必相同,“连接 Info 表”也能生效。

  • 只要值相同,即可将整型项与数值项进行匹配。例如,值为 123 的整型项可以与值为 123.00 的数值项进行匹配,但不能与值为 123.01 或 122.99 的数值项进行匹配。

  • 只要值匹配,即可将数值项与另一个具有不同小数位数的数值项进行匹配。例如,具有两个小数位的值为 123.45 的数值项可以与具有四个小数位的值为 123.4500 的数值项进行匹配。但是,不能与值为 123.4501 或 123.4499 的数值项进行匹配。“输出 INFO 表”的“关联项”中的小数位数应与“输入 INFO 表”的“关联项”中的小数位数相同。

  • 要保留输入表,请为输出表指定其他名称。

语法

JoinItem_arc (in_info_table, join_info_table, out_info_table, relate_item, {start_item}, {relate_type})
参数说明数据类型
in_info_table

要添加项目及项目值的 INFO 数据文件。

INFO Table
join_info_table

包含要添加的项目和值的 INFO 数据文件。

INFO Table
out_info_table

“连接 Info 表”生成的 INFO 数据文件。如果“输出 Info 表”已存在,则它将被替换。

INFO Table
relate_item

“输入 Info 表”中包含的项,此项被用作“连接 Info 表”中记录的索引。此项可以是重新定义的项。

String
start_item
(可选)

“输入 Info 表”列表中的项,将在此项之后插入“连接 Info 表”。默认的“起始项”是“输入 Info 表”中的最后一项。

String
relate_type
(可选)

“连接 Info 表”记录与“输入 Info 表”记录的匹配方式。

  • LINEAR —通过合并具有匹配“关联项”值的“输入 Info 表”记录和“连接 Info 表”记录,来得出写入“输出 Info 表”中的值。两个文件中必须都存在“关联项”。这两个文件可以按任何顺序排序。这是默认选项。
  • ORDERED —“输入 Info 表”必须按“关联项”排序。“连接 Info 表”和“输入 Info 表”都必须包含“关联项”。
  • LINK —仅“输入 Info 表”必须包含“关联项”。“输入 Info 表”可以按任何顺序排序。“输入 Info 表”的每条记录中的“关联项”值表示要合并的“连接 Info 表”中的记录号。当根据内部记录号将 INFO 文件与另一个文件关联时,可使用此方法。
String

代码示例

JoinItem 示例(独立脚本)

以下独立脚本演示了如何连接两个 INFO 表。

# Name: JoinItem_Example.py
# Description: Joins two INFO tables
# Requirements: ArcInfo Workstation

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inInfoTable = "maritime1/us5tx51m_p/point"
joinInfoTable = "maritime1/us5tx51m.lights_ncode"
outInfoTable = "C:/output/lightpoints"
relateItem = "RCID"

# Execute JoinItem
arcpy.JoinItem_arc(inInfoTable, joinInfoTable, outInfoTable, 
                   relateItem, "", "")

环境

  • 当前工作空间
  • 投影文件之间的比较级别
  • 派生 Coverage 的精度
  • 新 Coverage 的精度
  • 临时工作空间

许可信息

  • ArcGIS Desktop Basic: 否
  • ArcGIS Desktop Standard: 否
  • ArcGIS Desktop Advanced: 需要 已安装 ArcInfo Workstation

相关主题

  • 添加项目
  • 删除项目
  • 连接工具集概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2019 Esri. | 隐私政策 | 法律声明