中文

操作方法:在要素类表中查询重复记录

摘要

提供的说明将介绍如何在 SDE 或个人地理数据库要素类表内查询重复记录。

注: 本文仅适用于 ArcGIS 8.x 和 9.x 版本。 更高版本的 ArcGIS 可能包含不同的功能,对于菜单、命令和地理处理工具,可能具有不同的名称和位置。

如果基于指定的 [FIELD_NAME] 存在重复记录,则将选择重复记录的所有副本。 要区分第一个/原始记录和重复记录,请参阅以下“相关信息”部分中的知识库文章“标识重复字段值”。

警告: 概述的过程不适用于存储在文件地理数据库中的数据或者以 shapefile 格式存储的数据。
注: 如果针对版本化 ArcSDE 要素类执行此过程,则不考虑存储在增量表中的要素。 由于此查询仅查看要素类的业务表,因此需要确保在运行此查询之前,已对所有编辑内容进行压缩。 有关实现完全压缩的详细信息,请参阅以下“相关信息”部分中的文章 29160,然后将增量表中的编辑内容移至业务表。

过程

请执行以下步骤。

  1. 将 SDE 或个人地理数据库要素类添加至 ArcMap。
  2. 在主菜单中单击“选择”>“按属性选择”。
  3. 对于 SDE 数据,将以下 SQL 语句复制到标注为“SELECT *FROM [TABLE_NAME] WHERE:”的部分中:
[FIELD_NAME] In (SELECT [FIELD_NAME] FROM [TABLE_NAME] GROUP BY [FIELD_NAME] HAVING Count(*)>1 )

根据需要替换 FIELD_NAME 和 TABLE_NAME。

注: 该 SQL 语句将选择重复记录的两个副本。 对于仅选择具有较大 OID 值的重复记录的脚本,请参阅以下“相关信息”部分中的 ESRI 知识库文章“标识重复的字段值”。
  1. 对于存储在个人地理数据库中的数据,将以下 SQL 语句复制到标注为“SELECT *FROM [TABLE_NAME] WHERE:”的部分中:
[FIELD_NAME] In (SELECT [FIELD_NAME] FROM [TABLE_NAME] GROUP BY [FIELD_NAME] HAVING Count(*)>1 )

根据需要替换 FIELD_NAME 和 TABLE_NAME。

相关信息

上次修改时间: 5/15/2020

文章 ID: 000006708