概要
属性検索に基づいて、選択を追加、更新、または削除します。
使用法
入力がフィーチャクラスまたはデータセット パスの場合、このツールは、ツールの結果が適用された新しいレイヤーを自動的に作成して返します。
入力のデータ ソースがフィーチャ サービスの場合は、ArcGIS Server が標準化された SQL クエリを使用することが推奨事項となります。
入力にフィルター設定が存在する場合、そのフィルター設定に整合するフィーチャまたは行のみが選択で使用されます。
[平均以上] クエリと [平均以下] クエリを使用すると、入力レイヤーがソース データのサブセットである場合でも、AVG 関数がソース データに対して常に実行されます。
選択したレコードの数は、[ジオプロセシング履歴] で、[パラメーター] > [個数] の下にリストされます。さらに、[行のカウント (Get Count)] ツールを使用して、選択したレコードの数をカウントできます。Python の場合、選択したレコードの数は、ツールの Result オブジェクトからアクセスすることもできます。
構文
arcpy.management.SelectLayerByAttribute(in_layer_or_view, {selection_type}, {where_clause}, {invert_where_clause})
パラメーター | 説明 | データ タイプ |
in_layer_or_view | 選択を適用するデータ。 | Table View; Raster Layer; Mosaic Layer |
selection_type (オプション) | どのように選択を適用するか、選択がすでに存在する場合にはそれをどうするかを指定します。
| String |
where_clause (オプション) | レコードのサブセットを選択するために使用する SQL 式。SQL 構文の詳細については、「ArcGIS で使用されるクエリ式への SQL リファレンス」をご参照ください。 | SQL Expression |
invert_where_clause (オプション) | 式がそのまま使用されるか、逆の式が使用されるかを指定します。
| Boolean |
派生した出力
名前 | 説明 | データ タイプ |
out_layer_or_view | 選択が適用された状態の更新された入力。 | テーブル ビュー; ラスター レイヤー; フィーチャ レイヤー |
count | 選択したレコードの数。 | Long |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードで SelectLayerByAttribute 関数を使用する方法を示しています。
import arcpy
arcpy.SelectLayerByAttribute_management("states", "NEW_SELECTION",
"[NAME] = 'California'")
次のスタンドアロン スクリプトは、位置と属性検索に基づいてフィーチャを新しいフィーチャクラスに抽出するために、ワークフローで SelectLayerByAttribute 関数を使用する方法を示したものです。
# Name: ExtractFeaturesByLocationAndAttribute.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
arcpy.env.workspace = 'c:/data/mexico.gdb'
# Select all cities that overlap the chihuahua polygon
chihuahua_cities = arcpy.SelectLayerByLocation_management('cities', 'INTERSECT',
'chihuahua', 0,
'NEW_SELECTION')
# Within selected features, further select only those cities with a
# population > 10,000
arcpy.SelectLayerByAttribute_management(chihuahua_cities, 'SUBSET_SELECTION',
'"population" > 10000')
# Write the selected features to a new feature class
arcpy.CopyFeatures_management(chihuahua_cities, 'chihuahua_10000plus')
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい