アペンド (データ管理ツール)
サマリー
複数の入力データセットを 1 つの既存のターゲット データセットに追加 (アペンド) し、必要に応じて更新します。 入力データセットとして、フィーチャクラス、テーブル、シェープファイル、ラスター、アノテーション フィーチャクラス、またはディメンション フィーチャクラスを使用できます。 入力としてホスト フィーチャ サービスも使用できます。
入力データセットを 1 つの新しい出力データセットに結合するには マージ ツールを使用します。
図

使用法
このツールは、既存のデータセットに新しいフィーチャ、またはその他のデータを複数のデータセットから追加するときに使用します。 このツールは、ポイント フィーチャクラス、ライン フィーチャクラス、ポリゴン フィーチャクラス、テーブル、ラスター、アノテーション フィーチャクラス、ディメンション フィーチャクラスを、同じタイプの既存のデータセットにアペンドできます。 たとえば、複数のテーブルを既存のテーブルにアペンドしたり、複数のラスターを既存のラスター データセットにアペンドしたりすることはできますが、ライン フィーチャクラスをポイント フィーチャクラスにアペンドすることはできません。
フィールド マップ パラメーターを使用して、入力データセットの各フィールドの属性情報をターゲット データセットに転送する方法を制御できます。 フィールド マップ パラメーターは、フィールド マッチング タイプ パラメーターで フィールド マップを使用してフィールドの違いをリコンサイル が指定されている場合にのみ使用できます。
フィールド マップ パラメーターを使用すると、入力データセット内のフィールドとターゲット データセット内のフィールドをマッピングまたはマッチングできます。
アクションを使用して、入力データセット内の 1 つまたは複数のフィールドの値をターゲット データセット内の 1 つのフィールドにマッピングする方法を決定します。
使用可能なアクションは 最初、最後、連結、合計、平均、中央、最頻、最小、最大、標準偏差、および 個数 です。
連結 アクションを使用する場合は、カンマなどの文字を区切り文字として指定できます。 区切り文字 テキスト ボックスの先頭をクリックして、区切り文字を追加します。
標準偏差 は、単一の入力値に有効なオプションではありません。
フィールド マップを
.fieldmapファイルとして保存するには、エクスポート オプション
を使用します。.fieldmapファイルを読み込むには、読み込み オプション
を使用します。 このファイルで指定されているフィーチャ レイヤーまたはデータセットが、ツールで使用されているデータセットと一致していなければなりません。 一致していない場合、フィールド マップ パラメーターはリセットされます。テキスト ソース フィールドにある テキストのスライス ボタン
を使用して、入力値のどの文字をターゲット フィールドに抽出するかを選択します。 テキストのスライス ボタンにアクセスするには、入力フィールド リスト内のテキスト フィールドにポインターを合わせて、最初の文字と最後の文字の位置を指定します。フィールドは、Python スクリプトでマッピング することもできます。
Python で、
field_mappingパラメーターに対してFieldMappingsオブジェクトを使用する場合、まずターゲット データセットのフィールドを追加します。以下のコードをご参照ください。 入力フィールドは、ターゲット フィールドのスキーマにマッピングされます。 最初に入力フィールドが追加された場合、フィールド マップはリセットされるか、予期しない動作をする可能性があります。fieldmappings = arcpy.FieldMappings() fieldmappings.addTable(target) fieldmappings.addTable(input)このツールでは、フィーチャがターゲット データセットに追加されるときに、フィーチャのライン分割は行われません。 アペンド後にフィーチャが重なった場合でも、入力フィーチャクラスとターゲット フィーチャクラスのすべてのフィーチャがそのまま表示されます。 フィーチャ ジオメトリーの結合や分割を実行するには、ユニオン ツールを使用します。
フィールド マッチング タイプ パラメーターが 入力フィールドはターゲット フィールドと一致する必要がある に設定されている場合、入力データセットのスキーマは、フィーチャをアペンドするターゲット データセットのスキーマに一致する必要があります。
フィールド マッチング タイプ パラメーターが フィールド マップを使用してフィールドの違いをリコンサイル に設定されている場合、スキーマが一致する必要はありません。 ターゲット データセットのフィールドと一致しない入力データセットのフィールドは、フィールド マップ パラメーターでマッピングが設定されていない限り、ターゲット データセットにマッピングされません。 入力データセットのフィールドにマッピングされていないターゲット データセットのフィールドには、NULL 値が格納されます。
フィールド マッチング タイプ パラメーターが スキーマが一致しない場合はスキップして警告 に設定されている場合、入力データセットのスキーマは、フィーチャがアペンドされるターゲット データセットのスキーマに一致する必要があります。 ターゲット データセットのフィールドと一致しないフィールドが入力データセットにある場合、その入力データセットは省略されます。
追加された行の数がツール メッセージに表示され、追加された行数 出力で返されます。
入力データセットのデータは、スキーマがあらかじめ定義されている既存のターゲット データセットに書き込まれるため、フィールド マップ パラメーターを使用して、ターゲット データセットでフィールドを追加または削除することはできません。
このツールを使用すると、同じ操作でターゲット データセットに新しいレコードを挿入したり、既存のレコードを更新したりできます (
UPSERTデータベース操作と同等)。 更新用マッチング フィールド パラメーターを使用して、ターゲット データセットのフィールドと一致する入力データセットのフィールドを指定します。 フィールド値が一致するレコードの場合、ターゲット レコード内のすべてのフィールドが、入力レコード内の同名のフィールドの値を使って更新されます。 一致したフィールドを持つ更新済みの行の数がツール メッセージに表示され、更新された行数 出力で返されます。 ジオメトリーの更新 パラメーターがオンの場合は、ジオメトリーが更新されます。入力データセットとターゲット データセットの空間参照は異なる可能性があります。 この場合、ツールは、入力フィーチャをターゲットの座標系に投影します。 最適な結果のためには、地理座標系変換 環境を使用する適切な地理座標系変換を指定します。 ターゲット データセットがマップ レイヤーの場合、ツールはデフォルトの変換を適用します。 Python には、デフォルトの変換はありません。
このツールでは、エッジ マッチが実行されず、フィーチャのジオメトリーに対する調整は行われません。
マップ レイヤーは 入力データセット パラメーター値として使用することができます。 レイヤーで選択が行われている場合は、選択されているレコード (フィーチャまたはテーブル行) だけが使用されます。
このツールでは、名前の同じ入力レイヤーを複数使用することはできません。 代わりに、ジオプロセシング ウィンドウの参照ボタンを使用して、入力データセット の各値の絶対パスを参照します。
入力データセットとターゲット データセットが同じ名前である場合、ツールのパフォーマンスは低下します。
サブタイプ パラメーターを使用するには、ターゲット データセットにサブタイプ フィールドが定義され、サブタイプ コードが割り当てられている必要があります。 サブタイプ パラメーターには、ターゲット データセットにアペンドされるすべての新しいデータにこのサブタイプを割り当てることを示すサブタイプの説明を記述します。
ドメインを設定 パラメーターを使用し、ターゲット データセットのフィールドに 属性ドメイン を指定します。 このパラメーターをオンにすると、ツールはターゲット データセットで定義されたドメイン値を優先します。 これらのドメイン値に準拠しない入力フィールドのデータは NULL 値として挿入されます。
以下は、ターゲット データセット フィールドの更新に関連しています:
このツールを使用すると、同じ操作でターゲット データセットに新しいレコードを挿入したり、既存のレコードを更新したりできます (
UPSERTデータベース操作と同等)。 更新用マッチング フィールド パラメーターを使用して、ターゲット データセットのフィールドと一致する入力データセットのフィールドを指定します。デフォルトでは、フィールド値が一致するレコードについて、ターゲット レコード内のフィールドは、入力と同じフィールド名を持つ場合に入力の値で更新されます。 一致するフィールドを使用して更新された行の数はツール メッセージに表示され、派生した 更新された行数 パラメーターによって返されます。
候補フィールド パラメーターは、ターゲット データセット内のフィールドを選択的に更新または挿入するために使用できます。 たとえば、
f1、f2、f3、f4といったフィールドを含むターゲット データセットでは、ターゲット行の更新はf3とf4のフィールドのみを指定できます。 挿入操作では、f3フィールドとf4フィールドのみが挿入されます。ジオメトリーの更新 パラメーターがオンの場合は、ジオメトリーが更新されます。
ターゲット データセットのジオメトリーのみを更新し、属性フィールドを更新しない場合は、ジオメトリーの更新 パラメーターがオンになっていること、および候補フィールド パラメーターに 形状 フィールドのみが指定されていることを確認してください。 ターゲットがフィーチャ サービスであれば、下記の 使用法 セクションをご参照ください。
スキップ オプション パラメーターには、更新された行や挿入された行の挙動を制御するための以下のオプションがあります:
- **更新や挿入をスキップしない ** - フィールドが一致するすべての行はターゲットで更新され、入力と一致しない行はすべて挿入されます。
- **一致していない行の挿入をスキップする (更新のみ) ** - フィールドが一致するすべての行はターゲットで更新されます。 入力データセットと一致しない行は挿入されません。
- **一致した行の更新をスキップするてください (挿入のみ) ** - 一致するフィールドの行はターゲットで更新されません。 入力と一致しない行のみが挿入されます。
以下は、フィーチャ サービスに関するものです。
最適なパフォーマンスには、このツールをバックエンドのデータストア、サーバー、または Web フィーチャ レイヤーのデータベースに直接使用します。 ジオデータベースを参照するフィーチャ サービスの場合は、データベース コネクションを使用して、基礎データベースに対して大量データの読み込み操作を実行することができます。 ArcGIS Enterprise のホスト サービスの場合、フィーチャ レイヤーのアイテム ページまたは ArcGIS REST API の
appendoperation を使用します。ArcGIS Online および ArcGIS Enterprise のホスト サービスで最適なパフォーマンスを得るために、管理者およびサービス所有者は、
supportAppendプロパティがtrueのとき、ArcGIS REST API を使用してこのツールを使用することができます。 管理者以外のユーザーが ArcGIS REST API でこのツールを使用する場合は、フィーチャ サービスのアペンド機能が有効になっている必要があります。 ArcGIS Enterprise ホスト フィーチャ レイヤーの場合は、Uploads機能を有効にする必要があります。フィーチャ サービスのパフォーマンスの最適化 パラメーターは、ターゲット データセットがフィーチャ サービスのアペンド機能をサポートしている場合にのみサポートされます。 このパラメーターをオンにすると、ツールは以下を行います:
ツールは、最適なパフォーマンスを得るために ArcGIS REST API を使用します。
入力データセット パラメーターは 1 つのデータセットに限定されます。
式 パラメーターと ドメインを設定 パラメーターはサポートされません。
更新用マッチング フィールド パラメーターは、1 組のマッチング フィールドに限定されます。
すべての更新操作と挿入操作は、出力の 追加された行数 値でカウントされます。
既存の編集セッションでツールを実行するか、元に戻すの有効化 切り替えボタンが有効の場合、フィーチャ サービスのパフォーマンスの最適化 パラメーターは無視されます。
フィーチャ サービスのパフォーマンスの最適化 パラメーターがオンになっており、更新用マッチング フィールド パラメーター値に一致する
Global IDフィールドがある場合、Global ID 値は保持されます。Global IDフィールドが含まれない場合、すべての入力行が挿入され、新しい Global ID 値が割り当てられます。ターゲット データセットのジオメトリーのみを更新するには、ジオメトリーの更新 パラメーターをオンにして、候補フィールド パラメーターに一致フィールドの名前のみが含まれていることを確認してください。 たとえば、更新用マッチング フィールド パラメーター値が
globalidフィールドを使用している場合、候補フィールド パラメーターにはglobalidフィールドのみが含まれている必要があります。
パラメーター
| ラベル | 説明 | データ タイプ |
|---|---|---|
|
入力データセット |
ターゲット データセットにアペンドするデータを含む入力データセット。 入力データセットには、ポイント フィーチャクラス、ライン フィーチャクラス、ポリゴン フィーチャクラス、テーブル、ラスター、アノテーション フィーチャクラス、ディメンション フィーチャクラスを指定することができます。 テーブルとフィーチャクラスは結合できます。 フィーチャクラスをテーブルにアペンドすると、属性は割り当てられますが、フィーチャは削除されてしまいます。 テーブルをフィーチャクラス内にアペンドすると、入力テーブルの行に NULL ジオメトリーが格納されます。 |
Table View; Raster Layer |
|
ターゲット データセット |
入力データセットのデータをアペンドする既存のデータセット。 |
Table View; Raster Layer |
|
フィールド マッチング タイプ (オプション) |
データをアペンドするために、入力データセットのフィールドをターゲット データセットのフィールドと一致させる必要があるかどうかを指定します。
|
String |
|
フィールド マップ (オプション) |
フィールド マップ パラメーターでは、入力データセットからターゲット データセットへのフィールドの転送またはマッピングを制御します。 このパラメーターは、フィールド マッチング タイプ パラメーターが フィールド マップを使用してフィールドの違いをリコンサイル に設定されている場合にのみ使用できます。 入力データセットは、フィールドがあらかじめ定義されている既存のターゲット データセットに追加されるため、フィールド マップ内のフィールドのプロパティを追加、削除、並べ替え、変更することはできません。 フィールド マップを使用して、1 つ以上の入力フィールドの値を 1 つの出力フィールドに結合することができます。 |
Field Mappings |
|
サブタイプ (オプション) |
ターゲット データセットにアペンドされるすべての新しいデータに割り当てられるサブタイプの説明。 |
String |
|
式 (オプション) |
入力データセットのレコードのサブセットを選択するために使用される SQL 式。 複数の入力データセットを指定した場合、これらのデータセットはこの式を使用して評価されます。 入力データセットのレコードが式と一致しない場合、そのデータセットのレコードはターゲット データセットにアペンドされません。 SQL 構文の詳細については、「ArcGIS で使用されるクエリー式の SQL リファレンス」をご参照ください。 |
SQL Expression |
|
更新用マッチング フィールド (オプション) |
ターゲット データセットとの一致に使用される入力データセットのフィールド。 これらのフィールドの値が一致する場合、入力データセットのレコードはターゲット データセットの対応するレコードを更新します。 値テーブル列:
|
Value Table |
|
ジオメトリーの更新 (オプション) |
|
Boolean |
|
ドメインを設定 (オプション) |
ターゲットのフィールド ドメインが適用されるかどうかを指定します。
|
Boolean |
|
フィーチャ サービスのパフォーマンスの最適化 (オプション) |
ターゲット データセットが ArcGIS Online フィーチャ サービスか ArcGIS Enterprise フィーチャ サービスである場合、パフォーマンスを最適化するかどうかを指定します。 このパラメーターは、ターゲット データセットが最適化をサポートする場合にのみ有効です。
|
Boolean |
|
候補フィールド (オプション) |
ターゲット データセットの更新される、または挿入されるフィールド。 ターゲット データセットのフィールドのサブセットを更新または挿入する場合、このパラメーターを使用します。 新しいレコードを挿入するとき、このリストに含まれていないフィールドの値は NULL になります。 |
Field |
|
スキップ オプション (オプション) |
更新用マッチング フィールド パラメーターが指定されているとき、更新や挿入をスキップするかどうかを指定します。
|
String |
派生した出力
| ラベル | 説明 | データ タイプ |
|---|---|---|
|
更新されたターゲット データセット |
更新されたターゲット データセット。 |
Table View; Raster Layer |
|
追加された行数 |
ターゲット データセットに追加された行数。 フィーチャ サービスのパフォーマンスの最適化 パラメーターがオンになっており、更新用マッチング フィールド パラメーター値が指定されている場合、すべての更新操作と挿入操作がカウントされます。 |
Long |
|
更新された行数 |
ターゲット データセットで更新された行数。 フィーチャ サービスのパフォーマンスの最適化 パラメーターがオンの場合、ターゲット フィーチャ サービス データセットの更新された行数は提供されません。 |
Long |
環境
範囲, 現在のワークスペース, Global ID を維持, 添付ファイルを維持, 地理座標系変換
特殊なケース
- Global ID を維持
-
For the Append tool, this environment will only preserve Global ID values from the input dataset if the target Global ID field has a unique index. If the target Global ID field does not have a unique index, the tool may fail. To add a unique index to a Global ID field, use the Add Attribute Index tool.
If the target dataset contains a Global ID field and the input data does not, running the Append tool with this environment set to
Truewill automatically generate new Global ID values for inserted rows.This environment is ignored for target feature services. To preserve Global IDs for feature services that support optimization, check the Optimize performance for feature services parameter and specify GlobalID as the match fields in the Matching Fields for Update parameter.
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい