Skip To Content

検索条件設定でのクエリの作成

クエリは、テーブル レコードとフィーチャのサブセットを選択するために使用されます。ArcGIS Pro のすべてのクエリ式では、SQL (Structured Query Language) を使用して、検索の詳細を設定します。

クエリを構築するには、検索条件設定を使用します。検索条件設定は、次のような多くの場所にあります。

クエリの構築

SQL 構文を入力して、クエリをネイティブに作成するか、コンポーネントを選択して、対話的にクエリを構築できます。SQL 構文を作成すると、すべての SQL 機能にアクセスできます。SQL 構文でクエリを作成するには、[SQL] 切り替えボタンをクリックして、SQL モードに切り替えます。

クエリの対話的構築

検索条件設定のデフォルト モードでクエリを構築するには、選択したフィールド タイプに基づいて設定され、あらかじめフィルターが適用されているドロップダウン メニューから選択します。このモードでの操作には、次のようなメリットがあります。

  • データ ソースに関係なく、有効な SQL クエリを構築できます。
  • 事前に SQL の知識がなくても、一般的なクエリを構築できます。
  • 選択したフィールド タイプに基づいて、条件演算子がフィルタリングされます。
  • グループ化を適用して、容易に演算の順序を変えることができます。

このモードは、文字列、数値、日付フィールドに対するクエリ構築には適していますが、作成できるクエリの種類には制限があります。制限のないクエリを作成するには、[SQL] モードを使用します。インタラクティブ モードで項目の構築を開始し、[SQL] 切り替えボタンをクリックして、ネイティブ SQL 構文で項目を表示できます。これをもとに、必要に応じて項目に改良を加えていきます。ただし、インタラクティブ モードでサポートされていない SQL 構文を追加すると、その後そのモードに戻せなくなることもあるので注意が必要です。

インタラクティブ モードでの操作の詳細については、「クエリの構築および変更」をご参照ください。

SQL 構文の作成によるクエリの構築

SQL 構文の作成に慣れている場合は、[SQL] モードによるクエリの構築と管理の方がやりやすいかもしれません。[SQL] 切り替えボタンをクリックして、SQL モードに切り替えます。[SQL] モードでの操作には、次のようなメリットがあります。

  • 制限なくクエリを作成できます。
  • オートコンプリート機能を活用できます。入力するとプロンプトが開き、データ ソースがサポートするキーワードや演算子だけが表示されます。
  • カラー コード エレメントにより、クエリを視覚的に確認または変更できます。

SQL 構文

[SQL] モードでは、データソースが返すべきレコードを認識できるように、クエリの作成時には、正しい SQL 構文を使用する必要があります。特殊文字でフィールドを区切る必要はありません。SQL クエリの作成の詳細については、「SQL リファレンス ガイド」をご参照ください。

単純なクエリでも、複合クエリでも作成できます。

  • 単純なクエリには、STATE_NAME = 'Alabama' のように、1 つの項目だけが含まれます。このクエリでは、Alabama フィールドで STATE_NAME というテキストを含むすべてのフィーチャが選択されます。

  • 複合クエリは、論理演算子 AND または OR で接続された複数の項目で構成されます。複合クエリの句に括弧を使用して、演算の順序を定義することもできます。

    たとえば、STATE_NAME = 'Alabama' OR (STATE_NAME = 'Wyoming' AND POP2000 > 10000)Alabama フィールドに STATE_NAME を含むすべてのフィーチャ、Wyoming フィールドに STATE_NAME を含むすべてのフィーチャ、10,000 というフィールドで値が POP2000 よりも大きいすべてのフィーチャを選択します。

データベースの操作を頻繁に行っているユーザーの場合、すでに SQL を使用する機会が多くあるため、SELECT ステートメントと WHERE 句の使用に慣れているかもしれません。

  • SELECT ステートメントは、レイヤーまたはテーブルからフィールドを選択する場合に使用します。
  • WHERE 句は、特定の条件に一致するレコードを取得する場合に使用します。

WHERE 句を指定して、クエリでどの条件が重要であるかを決定します。検索条件設定を使用する場合は、サブクエリを含めるときに、WHERE 項目のみを指定します。サブクエリとは、別のクエリの中にネストされているクエリのことです。

使用する SQL 構文は、データ ソースによって異なります。各データベース管理システム (DBMS) には、独自の SQL 言語があります。ファイル ジオデータベース、シェープファイル、dBASE テーブル、CAD データ、VPF データなどのファイルベースのデータを検索するには、SQL の機能のサブセットをサポートする ArcGIS の SQL 言語を使用します。エンタープライズ ジオデータベースを検索するには、DBMS (Oracle、SQL Server、PostgreSQL、DB2、または Informix) の SQL 構文を使用します。データベースに直接アクセスする場合も同様です (Netezza など)。

関連トピック


このトピックの内容
  1. クエリの構築