筛选 (Analysis)

许可等级:BasicStandardAdvanced

摘要

从输入要素类或输入要素图层中提取要素(通常使用选择或结构化查询语言 (SQL) 表达式),并将其存储于输出要素类中。

用法

语法

Select_analysis (in_features, out_feature_class, {where_clause})
参数说明数据类型
in_features

从中选择要素的输入要素类或图层。

Feature Layer
out_feature_class

要创建的输出要素类。如果不使用任何表达式,则其中将包含所有输入要素。

Feature Class
where_clause
(可选)

用于选择要素子集的 SQL 表达式。表达式的语法会因数据源的不同而稍有不同。例如,如果要查询文件或 ArcSDE 地理数据库、shapefile 或 coverage,字段名需用双引号:

"MY_FIELD"

如果要查询个人地理数据库,需将字段用方括号括起:

[MY_FIELD]

在 Python 中,字符串用成对的单引号或双引号括起。要创建含有引号的字符串(常见于 SQL 表达式中的 WHERE 子句),可以对引号进行转义(使用反斜线)或对字符串使用三重引号。例如,如果所需的 WHERE 子句为

"CITY_NAME" = 'Chicago'

可以将整个字符串用双引号括起,然后如下所示对内部双引号进行转义:

" \"CITY_NAME\" = 'Chicago' "

或者可以将整个字符串用单引号括起,然后如下所示对内部单引号进行转义:

' "CITY_NAME" = \'Chicago\' '

或者不进行转义,而将整个字符串用三重引号括起:

""" "CITY_NAME" = 'Chicago' """

有关 SQL 语法及其在不同数据源中的差异的详细信息,请参阅帮助主题在 ArcGIS 中使用查询表达式的 SQL 参考

SQL Expression

代码实例

筛选 (Select) 示例(Python 窗口)
import arcpy
from arcpy import env

env.workspace = "c:/basedata/roads.gdb"
arcpy.Select_analysis("nfroads", "paved", '[ROAD_CLASS] = "PAVED"')
筛选 (Select) 示例(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用筛选 (Select) 函数。

import arcpy
from arcpy import env

env.workspace = "C:/data"
arcpy.Select_analysis("majorrds.shp", "C:/output/majorrdsClass4.shp", '"CLASS" = \'4\'')
筛选 (Select) 示例 2(独立 Python 脚本)

以下 Python 脚本演示了如何在独立脚本中使用筛选 (Select) 函数。

# Name: Select_Example2.py
# Description: Select roads of Class 4 from major roads tin the gnatcatcher habitat study area
# Author: ESRI

# Import system modules
import arcpy
from arcpy import env

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

# Set local variables
in_features = "majorrds.shp"
out_feature_class = "C:/output/majorrdsClass4.shp"
where_clause = '"CLASS" = \'4\''

# Execute Select
arcpy.Select_analysis(in_features, out_feature_class, where_clause)

环境

相关主题

许可信息

ArcGIS for Desktop Basic:是
ArcGIS for Desktop Standard:是
ArcGIS for Desktop Advanced:是
9/15/2013