Resumen
Agrega, actualiza o quita una selección en una capa o vista de tabla basada en una consulta de atributos.
Uso
La entrada debe ser una capa de entidades o una vista de tabla. La entrada no puede ser una tabla o clase de entidad.
Esta herramienta funciona sobre capas o vistas de tabla en la tabla de contenido de ArcMap y también sobre capas o vistas de tabla creadas en un script con las herramientas Crear capa de entidades o Crear vista de tabla.
Si se especifica un Entorno de extensión, o si hay una consulta de definición en la Capa de entrada o vista de tabla, solo pueden seleccionarse las entidades o filas dentro de la extensión o que coincidan con la consulta de definición.
Puede utilizarse la herramienta Obtener contador para determinar el número de entidades o filas seleccionadas. Esta puede ser especialmente útil en un script o en un modelo para determinar si se quiere seguir procesando.
Sintaxis
arcpy.management.SelectLayerByAttribute(in_layer_or_view, {selection_type}, {where_clause})
Parámetro | Explicación | Tipo de datos |
in_layer_or_view | Capa de entidades o vista de tabla a la que se aplicará la selección. La entrada puede ser una capa o una vista de tabla de la tabla de contenido de ArcMap, o una capa o vista de tabla creada en ArcCatalog o en scripts con las herramientas Crear capa de entidades o Crear vista de tabla. | Table View; Raster Layer; Mosaic Layer |
selection_type (Opcional) | Determina cómo se aplicará la selección y qué hacer si ya existe una selección.
| String |
where_clause (Opcional) | Una expresión de SQL utilizada para seleccionar un subconjunto de registros. Para obtener más información sobre la sintaxis SQL, consulte el tema de ayuda Referencia SQL para las expresiones de consulta utilizadas en ArcGIS. | SQL Expression |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_layer_or_view | La entrada actualizada con la selección aplicada. | Vista de tabla; Capa ráster; Capa de mosaico |
Muestra de código
Ejemplo 1 de SelectLayerByAttribute (ventana de Python)
El siguiente script de la ventana de Python demuestra cómo utilizar la función SelectLayerByAttribute en el modo inmediato.
import arcpy
arcpy.MakeFeatureLayer_management("C:/data/data.mdb/states", "stateslyr")
arcpy.SelectLayerByAttribute_management("stateslyr", "NEW_SELECTION", " [NAME] = 'California' ")
Ejemplo 2 de SelectLayerByAttribute (script independiente)
El siguiente script independiente muestra cómo utilizar la función SelectLayerByAttributes en un flujo de trabajo para extraer entidades en una nueva clase de entidad basada en la ubicación y en una consulta de atributos.
# Name: ExtactFeaturesByLocationAndAttribute.py
# Description: Extract features to a new feature class based on a spatial relationships to another layer AND an attribute query
# Import system modules
import arcpy
# Set the workspace
env.workspace = "c:/data/mexico.gdb"
# Make a layer from the feature class
arcpy.MakeFeatureLayer_management("cities", "lyr")
# Select all cities which overlap the chihuahua polygon
arcpy.SelectLayerByLocation_management("lyr", "intersect", "chihuahua", 0, "new_selection")
# Within selected features, further select only those cities which have a population > 10,000
arcpy.SelectLayerByAttribute_management("lyr", "SUBSET_SELECTION", ' "population" > 10000 ')
# Write the selected features to a new featureclass
arcpy.CopyFeatures_management("lyr", "chihuahua_10000plus")
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí