テーブルから選択(Table Select) (解析)
サマリ
SQL(Structured Query Language)式と一致するレコードをテーブルから選択し、それらを出力テーブルに書き出します。
使用法
-
入力には INFO、dBASE、またはジオデータベース テーブル、フィーチャクラス、テーブル ビュー、あるいは VPF データセットを使用できます。
-
[式] パラメータは、検索条件設定を使用して作成するか、直接入力できます。式の構文の詳細については、「SQL 式の作成について」または「SQL リファレンス」をご参照ください。
-
[入力テーブル] にテーブル ビューが使用され、式が入力されていない場合、選択されたレコードだけが出力テーブルに書き出されます。[入力テーブル] にテーブル ビューが使用されて式が入力されている場合、式は選択されたレコードだけに実行され、選択セットの式のサブセットが出力テーブルに書き出されます。
テーブル ビューのレコードの選択セットからテーブルを作成する場合、[行のコピー (Copy Rows)](管理)ツールを使用します。
構文
パラメータ | 説明 | データ タイプ |
in_table |
指定された式に一致するレコードを持つテーブルが、出力テーブルに書き出されます。 | Table View; Raster Layer |
out_table |
指定された式に一致する入力テーブルからのレコードを格納する出力テーブル。 | Table |
where_clause (オプション) |
レコードのサブセットを選択するために使用する SQL 式。この式の構文はデータ ソースによって多少異なります。たとえば、クエリ対象がファイル ジオデータベース、ArcSDE ジオデータベース、シェープファイル、カバレッジ、dBASE、または INFO テーブルの場合は、次のようにフィールド名を二重引用符で囲みます。 "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 |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードでテーブルから選択関数を使用する方法を示しています。
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.TableSelect_analysis("majorrds.shp", "C:/output/majorrdsCl4.shp", '"CLASS" = \'4\'')
次の Python スクリプトは、スタンドアロン スクリプトでテーブルから選択関数を使用する方法を示しています。
# Name: TableSelect_Example2.py
# Description: Selct class4 roads from the major roads 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/majorrdsCl4.shp"
where_clause = '"CLASS" = \'4\''
# Execute TableSelect
arcpy.TableSelect_analysis(in_features, out_feature_class, where_clause)