ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

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

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

ArcMap

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

添加属性索引

  • 描述
  • 使用方法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

描述

将属性索引添加到现有的表、要素类、shapefile、 coverage、 或属性关系类。

ArcGIS 可使用属性索引快速查找与属性查询相匹配的记录。有关地理数据库中的属性索引的信息,请参阅创建属性索引。

使用方法

  • Shapefile 和文件地理数据库不支持多个索引,因此附加字段将成为复合索引的一部分(即,对表中的多个字段创建的索引)。

  • 对于每个唯一索引名称,企业级和文件或个人地理数据库都添加了一个新索引。如果某个索引名称已经存在,则必须先将其删除,然后才能对其进行更新。

  • Shapefile 或者文件地理数据库不支持唯一和升序索引。对 shapefile 或者文件地理数据库数据执行此工具时,这些参数将被忽略。

  • 要建立索引的字段参数的添加字段按钮只能在 ModelBuilder 中使用。在 ModelBuilder 中,如果先前的工具尚未运行或其派生数据不存在,则可能不会使用字段名称来填充要建立索引的字段参数。添加字段按钮可用于添加所需字段,以完成添加属性索引对话框并继续构建模型。

语法

arcpy.management.AddIndex(in_table, fields, {index_name}, {unique}, {ascending})
参数说明数据类型
in_table

包含要建立索引的字段的表。

Mosaic Layer; Raster Catalog Layer; Raster Layer; Table View
fields
[fields,...]

要加入到索引中的字段的列表。可指定任意数量的字段。

Field
index_name
(可选)

新索引的名称。向地理数据库要素类和表添加索引时,必须指定索引名称。对于其他类型输入,可以忽略名称。

String
unique
(可选)

指定索引中的值是否唯一。

  • NON_UNIQUE —索引中的所有值并不都唯一。这是默认设置。
  • UNIQUE —索引中的所有值都唯一。
Boolean
ascending
(可选)

指定是否按升序建立索引。

  • NON_ASCENDING —不按升序建立索引。这是默认设置。
  • ASCENDING —按升序建立索引。
Boolean

派生输出

名称说明数据类型
out_table

已更新的输入表。

表视图;栅格图层;镶嵌图层

代码示例

AddIndex 示例 1(Python 窗口)

以下代码演示了如何在 Python 交互式窗口中使用 AddIndex 函数。

import arcpy
arcpy.env.workspace = "C:/data/input/indices.sde"
arcpy.AddIndex_management("gdb.USER1.lakes", ["NAME", "geocompID"], "NGIndex", "UNIQUE", "ASCENDING")
AddIndex 示例 2(独立脚本)

以下独立脚本演示了如何创建指定字段的属性索引。

# Name: AddAttIndex.py
# Description: Create an attribute Index for specified fields
# Import system modules
import arcpy
 
# Set a default workspace
arcpy.env.workspace = "c:/data"
  
# Create an attribute index for the few fields listed in command.
arcpy.AddIndex_management("counties.shp", ["NAME", "STATE_FIPS", "CNTY_FIPS"], "#", "NON_UNIQUE", "NON_ASCENDING")
arcpy.AddIndex_management("mexico.gdb/land/lakes", ["NAME", "geocompID"], "NGIndex", "NON_UNIQUE", "NON_ASCENDING")

环境

  • 当前工作空间

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题

  • 索引工具集概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

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