Skip To Content

既存フィーチャの検索

既存フィーチャの検索 [既存フィーチャの検索] ツールでは、分析範囲内で空間検索または属性検索に基づく一連の条件を満たしているフィーチャを選択します。

ワークフロー図

[既存フィーチャの検索] のワークフロー図

用語

用語説明

空間検索

空間リレーションシップでの検索

属性検索

フィールド値での検索

  • ある投資会社は、小規模な食料品店チェーンを買収し、新たな流通センターに適した用地を探しています。流通センターの建設には、高速道路から 1 マイル以内の場所にあり、洪水帯に入っていない 20 エーカー以上の空き地が必要です。[既存フィーチャの検索] を使用すると、都市の中から、これらの条件に合った用地をすべて選択できます。

  • ある GIS アナリストは、風力発電所の申請書を事前に確認して、次の審査に進める候補地を決めようとしています。このアナリストは、候補地が、道路にアクセスすることができ、保護エリアから見えない場所にあることを条件として選びました。[既存フィーチャの検索] を使用すると、すべての条件を満たしている候補地を選択できます。

  • ある都市の警察は、凶悪犯罪と失業率の間に何らかの関係性があるかを判断する解析を実施しています。凶悪犯罪の件数が多く、失業率が高い地域にある高校で拡張サマー ジョブ計画を導入する予定です。[既存フィーチャの検索] を使用すると、改善対象地域から 4 分の 1 マイル内にある高校を選択できます。

使用に関する注意

ポイント、ライン、またはエリア フィーチャの単一の入力が必要です。空間結合で別のレイヤーが追加されている場合を除いて、この入力は検索可能なただ 1 つのレイヤーになります。

クエリを構築するには、[条件式の追加] を使用します。空間検索と属性検索の組み合わせなど、複数の条件式を追加できます。条件式を満たしている入力レイヤー内のフィーチャは、結果レイヤーに書き込まれます。

属性検索に使用できる演算子が複数用意されています。使用できる演算子は、検索するフィールドがカテゴリであるか数値であるかによって異なります。

フィールドがカテゴリの場合は、次の演算子を使用できます。

  • に等しい
  • に等しくない
  • で始まる
  • で終わる
  • を含む
  • を含まない
  • 空である
  • 空でない

フィールドが数値の場合は、次の演算子を使用できます。

  • に等しい
  • に等しくない
  • 以上
  • より小さい
  • 以下
  • より大きい
  • の間にある
  • の間にない
  • 空である
  • 空でない

属性条件式の構築方法の詳細については、「[既存フィーチャの検索] の詳細」セクションをご参照ください。

空間検索で使用できる空間条件式は、次のとおりです。

  • 交差する
  • 交差しない
  • 一定距離内
  • 一定距離内にない
  • 完全に含む
  • 完全に含まない
  • 完全に含まれる
  • 完全に含まれない

空間条件式の構築方法の詳細については、「[既存フィーチャの検索] の詳細」セクションをご参照ください。

複数の条件式をクエリに追加するには、[条件式の追加] ボタンを使用します。演算子として and または or を使用して、条件式を組み合わせることができます。

[現在のマップ範囲を使用] がオンの場合、現在のマップ範囲に表示される入力レイヤーのフィーチャだけが解析されます。 オフの場合、すべてのフィーチャが、現在のマップ範囲内になくても解析されます。

[既存フィーチャの検索] の詳細

条件式の構築

条件式を作成するには、[条件式の追加] ボタンをクリックして、[条件式の追加] ダイアログ ボックスを開きます。

属性条件式

属性条件式を作成するには、[where (属性クエリ)] を条件式タイプとして使用します。

属性条件式の追加例
属性条件式の [条件式の追加] ダイアログ ボックス

数値説明
入力レイヤー

条件式に使用できるレイヤーがここにリストされます。最初に選択できるのは、解析レイヤーだけです。他のレイヤーとの空間リレーションシップを確立したら (たとえば、区画は都市の境界に完全に含まれる)、ドロップダウン メニューにその他のレイヤーがリストされます。

条件式のタイプ

これは、条件式のタイプです。属性条件式の場合、[場所 (属性クエリ)] を選択します。

フィールド

クエリするフィールドをリストから選択します。

演算子

条件式の演算子を選択します。

値、フィールド、または個別値

  • 特定の値に基づいてフィーチャを検索する場合は、[値] を選択し、入力ボックスに値を入力します。
  • 2 つのフィールド間で値を比較する場合は、[フィールド] を選択し、ドロップダウン矢印をクリックして、式のフィールドを選択します。たとえば、上のスクリーン ショットの場合は、POP UNDER 18 の値が POP OVER 18 の値より大きいフィーチャが検索されます。
  • 条件式のために選択したフィールドの特定の値に基づいてフィーチャを検索する場合は、[個別値] を選択し、フィールドから一意の値を選択します。個別値のフィルターには、ArcGIS 10.1 for Desktop 以降を使用して公開されたフィーチャ サービスが必要です。

注意:

レイヤーにフィルターが適用されている場合、フィルター条件式に合致するフィーチャだけが解析に使用されます。

空間条件式

空間条件式は、[完全に含まれる][交差する] などの条件式のタイプを選択して作成します (完全なリストについては、「空間条件式のタイプ」をご参照ください)。

空間条件式のタイプを選択すると、選択した条件式のタイプに応じて [条件式の追加] ダイアログ ボックスが変化します。

空間条件式
空間条件式の [条件式の追加] ダイアログ ボックス

数値説明
最初のレイヤー

最初のレイヤーです。最初に選択できるのは、解析レイヤーだけです。他のレイヤーとの空間リレーションシップを確立したら (たとえば、区画はコミュニティの境界に完全に含まれる)、ドロップダウン メニューにその他のレイヤーがリストされます。

条件式のタイプ

空間条件式のタイプです。空間条件式のそれぞれのタイプの詳細については、以下をご参照ください。

2 番目のレイヤー

2 番目のレイヤーです。これは、マップ内にあるその他のレイヤーです。

完成したクエリの例

Understanding GIS, An ArcGIS Project Workbook』という書籍にあるクエリの例を以下に示します。この書籍では、ロサンゼルス市内で公園の開発に適した空き地を探していると仮定しています。公園に適した場所には、以下の条件があります。

  • 区画が空き地である。
  • ロサンゼルス市の境界内にある。
  • 1 エーカー以上の広さである。
  • 区画の一部が、ロサンゼルス川から 0.75 マイル以内にある。
  • 区画が既存の公園から少なくとも 0.25 マイルにある。

以下のスクリーン ショットは、ParcelsRivers、および City Boundaries というレイヤーを使用した、上記の条件に基づく [既存フィーチャの検索] クエリを示したものです。

区画を検索するクエリ

注意:

  • 条件式の順序は、解析の結果に影響しません。
  • グループおよびグループ解除ボタン グループおよびグループ解除 をクリックすると、条件式をグループ化およびグループ解除できます。グループを作成するには、複数の条件式を選択して、グループ ボタンをクリックします。グループの詳細については、[既存フィーチャの検索] の詳細のグループ化のトピックをご参照ください。
  • および をクリックすると、演算子が または に切り替わります。または をクリックすると、演算子が および に切り替わります。

空間条件式のタイプ

空間条件式は、2 つのレイヤー間にリレーションシップを確立します。同じレイヤー内にあるフィーチャ間に空間リレーションシップを確立する必要がある場合 (たとえば、個々の区画の一定距離内にある空き地を選択したい場合など)、区画レイヤーをコピーしてマップに追加し、同じ区画フィーチャを使用した 2 つのレイヤーを用意します。

一定距離内にある/一定距離内にない

一定距離内にある

一定の距離内リレーションシップは、最初のレイヤーと 2 番目のレイヤーのフィーチャ間の直線距離を使用します。

  • [一定距離内にある] - 2 番目のレイヤーのフィーチャの指定距離内に一部が含まれる場合、最初のレイヤー内のフィーチャが選択されます (出力に含められます)。たとえば、河川から 100 メートル以内にある区画が出力に含められます。
  • [一定距離内にない] - 2 番目のレイヤーのフィーチャの一定距離内にある場合、最初のレイヤーのフィーチャは除外されます (出力に含められません)。たとえば、河川から 100 メートル以内にある区画が出力に含められません。このリレーションシップは、「より遠く」と考えることができます。

注意:

距離は、フィーチャの最も近い部分間で計算されます。区画がロサンゼルス川から 0.75 マイル以内にある必要があるという上の例では、区画の一部が 0.75 マイル以内にあれば、区画が選択されます。区画全体が 0.75 マイル以内に収まる必要があるという条件の場合は、ロサンゼルス川の周囲 0.75 マイルに対して [バッファーの作成] ツールを使用して、新しいレイヤーを作成します。次に、区画がバッファー レイヤー内に完全に含まれる条件式を作成します。

完全に含む/完全に含まない

完全に含む

最初のレイヤーのフィーチャは、2 番目のレイヤーのフィーチャを完全に囲んでいる場合、この条件を満たします。含まれているフィーチャの一部でも、含んでいるフィーチャの外部には存在できません。ただし、含まれているフィーチャが含んでいるフィーチャと接している (境界線上の共通点を共有している) ことは可能です。

  • [完全に含む] - 最初のレイヤーのフィーチャが 2 番目のレイヤーのフィーチャを含んでいる場合、最初のレイヤーのフィーチャが出力に含められます。
  • [完全に含まない] - 最初のレイヤーのフィーチャが 2 番目のレイヤーのフィーチャを含んでいる場合、最初のレイヤーのフィーチャが出力から除外されます。

注意:

包含するリレーションシップは、ポイントとラインで使用できます。たとえば、道路の中央線 (ライン) のレイヤーと、マンホール カバー (ポイント) のレイヤーがあり、マンホール カバーを含む道路を検索するとします。マンホール カバーを含む道路を検索するのに [完全に含む] を使用できますが、ラインがポイントを含むためには、ポイントが完全にライン上にある (GIS 用語では互いにスナップされる) 必要があります。これに該当するかわからない場合は、適切な距離の値で [一定距離内にある] リレーションシップを使用します。

完全に含まれる/完全に含まれない

完全に含まれる

最初のレイヤーのフィーチャは、2 番目のレイヤーのフィーチャに完全に囲まれている場合、この条件を満たします。最初のレイヤーのフィーチャ全体が、含んでいるフィーチャの中にある必要があります。ただし、2 つのフィーチャが接している (境界線上の共通点を共有している) ことは可能です。

  • [完全に含まれる] - 最初のレイヤーのフィーチャが完全に 2 番目のレイヤーのフィーチャ内にある場合、最初のレイヤーのフィーチャが出力に含められます。
  • [完全に含まれない] - 最初のレイヤーのフィーチャが完全に 2 番目のレイヤーのフィーチャ内にある場合、最初のレイヤーのフィーチャが出力から除外されます。

注意:

含まれるリレーションシップは、包含するリレーションシップと同様にポイントとラインに対して使用できます。たとえば、最初のレイヤーがマンホール カバーを表すポイントを含んでいて、(駐車場やその他の道路以外のフィーチャではなく) 道路の中央線上にあるマンホールを検索するとします。道路の中央線上にあるマンホール ポイントを検索するのに [完全に含まれる] を使用できますが、ポイントがラインを含むためには、ポイントは完全にライン上にある (GIS の用語では互いにスナップされる) 必要があります。これに該当するかわからない場合は、適切な距離の値で [一定距離内にある] リレーションシップを使用します。

交差する/交差しない

交差する

最初のレイヤーのフィーチャは、2 番目のレイヤーのフィーチャの一部と重なる場合 (フィーチャが共通ポイントを共有して接する場合を含む)、交差する条件を満たします。

  • [交差する] - 最初のレイヤーのフィーチャが 2 番目のレイヤーのフィーチャと交差する場合、最初のレイヤーのフィーチャが出力に含められます。
  • [交差しない] - 最初のレイヤーのフィーチャが 2 番目のレイヤーのフィーチャと交差する場合、最初のレイヤーのフィーチャは出力から除外されます。

グループ化

グループ ボタン グループ を使用すると、連続する複数の条件式をグループ化できます。グループ化する複数の条件式を選択するには、Shift キーを押しながらクリックします。

グループ化が必要な例を次に示します。

  • 有害化学物質を含むサイトのポイント レイヤーがあります。各ポイントには、そのサイトに存在することが判明している有害化学物質の名前を含む CHEMICAL という属性があります。
  • 河川に近く、MERCURYまたはSELENIUMを含む有害サイトを検索します。
  • 公園に近く、BENZENEまたはLEADを含む有害サイトも検索します。

上の例では、公園に近い有害サイトと河川に近い有害サイトの 2 つのフィーチャ セットが同じ有害サイト レイヤーから作成されます。これら 2 つのセットは互いに区別されます。

河川に近い有害サイトのセットは公園に近い有害サイトと区別されるため、グループ化を使用してクエリを構築します。図 1 は、論理演算子をグループ化または修正しない当初のクエリを示しています (演算子はすべて および です)。このクエリの結果は、公園と河川の両方の 1 キロメートル以内の有害サイトになります。これは目的ではありません。求めている結果は、河川から 1 キロメートル以内にある一連の有害サイトと、公園から 1 キロメートル以内にある別の一連の有害サイトです。

当初のクエリ
図 1: 当初のクエリ

上述した条件を満たすクエリを作成するには、グループを作成する必要があります。各グループは、前の条件式を組み合わせたサブクエリを形成します。

まず、図 2 のように、最初の 2 つの属性条件式を選択します。

属性条件式の最初のグループの選択
図 2: 属性条件式の最初のグループの選択

2 つの属性条件式を選択したら、グループ ボタン グループ をクリックします。図 3 のように、グループがインデントされます。

図 3 のように、属性条件式の 2 番目のグループを選択します。

属性条件式の次のグループの選択
図 3: 属性条件式の 2 番目のグループの選択

2 番目のグループを選択したら、グループ ボタンをクリックします。

最後に、図 4 のように、属性条件式の 2 番目のグループとそれらが含まれる空間条件式を選択します。

属性条件式の 2 番目のグループとそれらが属する空間条件式の選択
図 4: 属性条件式の 2 番目のグループとそれらが属する空間条件式の選択

図 5 のように、グループ ボタンをクリックすると、クエリがインデントされます。最後に、図 5 のように、およびまたは に切り替えます。

最終クエリ
図 5: 最終クエリ

図 5 に示したクエリは、求めている結果を生成します。

  • Toxic Sites または LEAD を含む BENZENE が検索されます。これらのフィーチャは、Parks から 1 キロメートル以内にある有害サイトの検索によるサブセットです。
  • 次に、Toxic SitesまたはSELENIUMを含むMERCURYが検索されます。これらのフィーチャは、Riverから 1 キロメートル以内にある有害サイトの検索によるサブセットです。
  • 最後に、2 つのフィーチャ セットが論理的な または を使用して結合されます。

グループ化の条件式は、同じレイヤーから複数の異なるフィーチャ セットを作成しなければならない場合のみ必要です。グループ化を考える 1 つの方法として、グループ化を使用しない場合は、[既存フィーチャの検索] を 2 度実行します (河川に近いサイトの検索と公園に近いサイトの検索)。その後、[マージ (Merge)] ツールを使用して 2 つの結果を結合する必要があります。

テキスト ボタン テキスト をクリックすると、クエリのテキスト表現が表示されます。テキスト表現では、グループの表記に括弧が使用されます。

類似のツール

[既存フィーチャの検索] で、属性検索と空間検索を使用して、一連の条件を満たしているフィーチャを選択します。これ以外にも、少しだけ異なる同種の問題を解決する際に役立つツールがあります。

マップ ビューアーの解析ツール

参照している場所と似た場所を検索する場合は、[類似フィーチャの検索] ツールを使用します。

クエリを使用して新規のフィーチャを作成する場合は、[新規フィーチャの作成] ツールを使用します。

注意:

[既存フィーチャの検索] ツールと [新規フィーチャの作成] ツールの主な違いは、[新規フィーチャの作成] の結果に部分的なフィーチャを含めることができる点です。

  • どちらのツールも、属性条件式 [条件]、空間条件式 [完全に含まれる]、および [完全に含む] は、同じ結果を返します。これは、これらの条件式が、フィーチャ全体を返すためです。
  • [交差する] または [一定距離内にある] を使用すると、[新規フィーチャの作成] で、新しいフィーチャが出力結果レイヤー内に作成されます。

ArcGIS Desktop 解析ツール

[既存フィーチャの検索] では、ArcGIS Desktop[属性検索 (Select Layer By Attribute)] および [空間検索 (Select Layer By Location)] の機能が実行されます。