属性と位置による検索の仕組み

属性と位置による検索ツールは、指定された条件を満たすフィーチャまたはフィーチャの一部を見つけるために、空間検索と属性検索を行います。

演算子

属性と位置による検索では、属性検索と空間検索に演算子を使用します。

属性演算子

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

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

  • [等しい] - 指定したテキストに一致する文字列。
  • [等しくない] - 指定したテキストに一致しない文字列。
  • [メンバーである] - 指定したテキスト値のいずれかに一致する文字列。
  • [メンバーでない] - 指定したテキスト値のいずれとも一致しない文字列。
  • [含む] - 指定のテキストを含む文字列。
  • [含まない] - 指定のテキストを含まない文字列。
  • [で始まる] - 指定したテキストで始まる文字列。
  • [で始まらない] - 指定したテキストで始まらない文字列。
  • [で終わる] - 指定したテキストで終わる文字列。
  • [で終わらない] - 指定したテキストで終わらない文字列。
  • [空白である] - テキストを含まず null ではない文字列。
  • [空白でない] - 何らかのテキストを含み、null ではない文字列。
  • [空の文字列] - null であるかテキストを含まない文字列。
  • [空の文字列でない] - 何らかのテキストを含むか、null の文字列。

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

  • [間にある] - 指定した 2 つの値の間の数値。
  • [間にない] - 指定した 2 つの値の間にない数値。
  • [等しい] - 指定の値と一致する数値。
  • [等しくない] - 指定の値と一致しない数値。
  • [メンバーである] - 指定した値のいずれかに一致する数値。
  • [メンバーでない] - 指定した値のいずれとも一致しない数値。
  • [より大きい] - 指定の値よりも大きい数値。
  • [以上] - 指定の値以上の数値。
  • [より小さい] - 指定の値よりも小さい数値。
  • [以下] - 指定の値以下の数値。
  • [空白である] - 指定の値と一致する数値
  • [空白でない] - 何らかの値を持つ数値。

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

  • [間にある] - 指定した 2 つの日付間の日付。
  • [間にない] - 指定した 2 つの日付間にない日付。
  • [指定日] - 指定した日付と同じ日。
  • [指定日ではない] 指定した日付と同じ日ではない。
  • [より前] - 指定した日付よりも前の日付。
  • [より後] - 指定した日付よりも後の日付。
  • [空白である] - null の日付。
  • [空白でない] - null ではない日付。

空間演算子

空間式は、[完全に含まれる][交差する] などの演算子を指定することで作成します。

空間検索では、次の空間演算子を使用できます。

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

検索条件設定

クエリを構築するには、[新しいクエリの構築] ボタンをクリックします。

開始するには、フィーチャを検索するレイヤーを選択します。 次に、属性式または空間式のどちらで始めるかを選択します。 それぞれの属性検索は、1 つのフィールド名、演算子、および値で構成されます。 それぞれの空間式は、演算子および 2 番目のレイヤーで構成されます。 2 番目のレイヤーの下にある [+ 式] ボタンを使用して式を追加し、元の空間式で使用される 2 番目のレイヤーのフィーチャをさらに絞り込むことができます。

たとえば、ある都市の犯罪事件データ (盗難、放火火災、暴行など) を含むレイヤーに対するクエリを作成して、盗難事件だけを表示することができます。 次のように属性式を作成します。

  • フィールド名として [Crime Type] を選択します。
  • 演算子には [等しい] を選択します。
  • 値には「Theft」と入力するか選択します。

パン屋を表す別のレイヤーを使用し、ドーナツ店から 100 メートル圏内で発生した盗難事件を検索するようクエリを絞り込むことができます。 次のように空間式を追加します。

  • 演算子には [一定距離内にある] を選択して 100 メートルと入力します。
  • レイヤーには、パン屋のレイヤーを選択します。
  • [+ 式] ボタンをクリックし、[属性式] を選択します。
  • [Where] ステートメント グループで、フィールド名として [Shop Type] を選択し、演算子を [等しい] のままにして、値として [Donut shops] と入力するか選択します。

クエリに複数の式が含まれている場合は、それぞれの式を結び付ける結合オプションを選択する必要があります。 上記の例では、[次のすべてに一致] オプションが選択されています。 つまり、この式を適用すると、すべての式を満たしたフィーチャ (この場合は、ドーナツ店の 100 メートル圏内で発生した盗難) のみが返されます。

その他のクエリについては、[次のいずれかに一致] オプションが必要になることがあります。 たとえば、すべての盗難事件と、ドーナツ店の 100 メートル圏内で発生した犯罪を表示するには、[次のいずれかの一致] を選択します。

式グループ

より複雑なクエリを作成するには、式グループを使用して、複数の式をグループ化します。 式をグループ化する方法によって、表示される内容が決まります。 最大で 3 つのレベルのグループを作成できます。

たとえば、式グループを使用して、上記の犯罪事件フィルターをさらに絞り込むことができます。 ドーナツ店から 100 メートル圏内で報告された放火火災と盗難事件の両方を表示するには、放火火災または盗難事件を見つける式グループを作成します。 そのグループ内で [次のいずれかに一致] オプションを使用します。 次に、グループの外部で、ドーナツ店から 100 メートル圏内のフィーチャを見つける空間式を追加します。

ドーナツ店から 100 メートル圏内で発生した放火および盗難事件を検索するグループ式

このトピックの内容
  1. 演算子