ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

クエリ レイヤーの作成

クエリ レイヤーの作成には、ArcMap の [新規クエリ レイヤー] ダイアログ ボックスを使用します。クエリ レイヤーを作成する前に、データベースへの接続を確立しておく必要があります。[接続] ドロップダウン リストには、利用可能なデータベース接続が表示されます。

データベースへの接続が確立されると、そのデータベースにあるテーブルとビューのリストがダイアログ ボックスの左側のウィンドウに表示されます。テーブルを 1 つ選択すると、そのテーブルの各列が右側のウィンドウに表示されます。

データベース接続に一覧表示されたテーブルと列

注意:

データベースの各列にはそれぞれデータ タイプが設定されています。ArcGIS では、ほとんどの一般的なデータベース タイプを使用できます。ただし、一部のデータベース タイプはサポートされていません。属性列のタイプに「不明」と表示されている場合は、ArcGIS がサポートしていないデータ タイプであることを示します。クエリを指定するときには、データ タイプが不明の列をすべて除外するか、ArcGIS でサポートされている別のデータ タイプにクエリで変更する必要があります。

ArcGIS がサポートするデータ タイプの詳細については、「ArcGIS でサポートされているデータ タイプ」をご参照ください。

[クエリ] テキスト ボックスに SQL クエリを指定します。

クエリの構築にあたって [クエリ] テキスト ボックスにテーブル全体を追加する場合は、テーブルをダブルクリックするか、コンテンツ ウィンドウのテーブルを [クエリ] テキスト ボックス内にドラッグします。同様に、テーブル内の特定の列をクエリに追加する場合は、該当する列をダブルクリックするか、[列] ウィンドウから列を [クエリ] テキスト ボックス内にドラッグします。また、特定のクエリを入力することも、外部アプリケーションのクエリをコピーして [クエリ] テキスト ボックスに貼り付けることもできます。

クエリ レイヤーを構築するときは、そのデータベースに固有の SQL 構文を使用する必要があります。一般的な SQL 文は、SELECT * FROM Test.dbo.US_States のようになります。この場合は、US_States テーブルのすべての列が含まれたクエリ レイヤーが作成されます。ArcMap では、アメリカ合衆国全体が表示されます。SQL クエリの構築の詳細については、「クエリ式の構築」をご参照ください。

クエリを作成したら、その整合性をチェックする必要があります。整合チェック中に、ArcGIS はテーブルに返された最初の行に基づいてクエリ レイヤーのプロパティを決定します。

クエリ レイヤーのプロパティは次のようになります。

  • 一意識別子フィールド - ArcGIS がレイヤーを一意に識別するために使用する 1 つまたは複数のフィールドです。
  • 次元 - レイヤーの座標に、ルート データを格納するための M 値と 3D データを格納するための Z 値が含まれるかどうかを決定します。
  • ジオメトリ タイプ - レイヤーがポイント、マルチポイント、ライン、またはポリゴンのいずれであるかを決定します。
  • 空間参照 - レイヤーの座標系とその他の関連空間プロパティを表します。

    空間参照の詳細

  • SRID - レイヤーの空間参照 ID を表し、クエリで空間参照 ID が同じジオメトリだけを返すために使用されます。

[高度な設定を表示] チェックボックスをオンにして [次へ] をクリックすると、クエリ レイヤーの整合チェックを行った後に、これらのプロパティを表示および変更できます。

クエリ レイヤーのプロパティは、データベースから ArcGIS に返された行をフィルター処理するために使用されます。たとえば、テーブル内のジオメトリに複数の SRID が指定されている場合は、クエリ レイヤーに SRID プロパティを設定して、その SRID に一致しないデータベース テーブルの行を ArcMap で表示しないようにすることができます。

  1. [新規クエリ レイヤー] ダイアログ ボックスの [名前] テキスト ボックスに、作成するクエリ レイヤーの名前を指定します。この名前が ArcMap の [コンテンツ] ウィンドウに表示されます。
  2. [クエリ] テキスト ボックスに SQL クエリを入力します。
  3. クエリを作成したら、その整合性をチェックする必要があります。[整合チェック] をクリックすると、クエリの構文が正しく、ArcGIS で利用できるデータを返すものであるか確認できます。整合チェック プロセスでは、データベースに対してクエリを実行し、クエリから返される結果セットが ArcGIS のデータ モデリング標準に従っているかどうかが確認されます。クエリ レイヤーは、整合性が確認されるまで ArcMap に追加されません。

    整合チェック ルールとして、次を満たしていることが確認されます。

    • 結果セットの持つ空間フィールドは 1 つだけである。
    • 結果セットが持つ空間参照は 1 つだけである。
    • 結果セットが持つシェープ タイプは 1 つだけである。
    • 結果セットに、ArcGIS のサポートしないフィールド タイプは含まれていない。

    なんらかの理由で整合チェックに失敗した場合は、エラー メッセージが返されるので、クエリを修正する必要があります。

    整合チェックは、対象のデータが ArcGIS と同じ標準を使用しない空間データベース内のデータである場合に特に重要になります。

    ヒント:
    整合チェック処理時に、ArcGIS はクエリ レイヤーの次元、ジオメトリ タイプ、空間参照、SRID、および一意識別子のプロパティを設定します。これらの値は、クエリで返される先頭行に基づいています。これらの設定を変更する必要がある場合は、[高度な設定] ダイアログ ボックスを使用します。[新規クエリ レイヤー] ダイアログ ボックスに高度な設定ページを表示するには、[高度な設定を表示] のチェックボックスをオンにします。

    高度な設定ページの詳細については、「一意な識別子のフィールドの選択」と「クエリ レイヤーの空間参照の定義」をご参照ください。

  4. クエリの整合チェックに成功したら、[完了] をクリックして、結果をクエリ レイヤーとして ArcMap に追加します。

    注意:

    ArcMap は、レイヤーをマップにドラッグしたときにレイヤーの範囲を計算します。多数のフィーチャを含むテーブルを追加する場合は、範囲の計算に時間がかかる場合があります。データの範囲を知っている場合や、範囲の計算を待たずに独自の空間参照の範囲を使用したい場合は、そちらを選択できます。[範囲の計算] ダイアログ ボックスで該当するボタンをクリックします。[範囲の入力] をクリックした場合、テーブル内のすべてのフィーチャを含む有効な範囲を入力する必要があります。

    範囲を計算するその他の方法

関連トピック

  • クエリ レイヤーの変更
  • クエリ レイヤーのエクスポート

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2019 Esri. | プライバシー | リーガル