ArcGIS for Desktop

  • ドキュメント
  • 価格
  • サポート

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

ArcGIS Online

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

ArcGIS for Desktop

完全なプロ仕様の GIS

ArcGIS for Server

エンタープライズ GIS

ArcGIS for Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

ヘルプ

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • その他...

クエリ レイヤーの作成

クエリ レイヤーの作成には、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 for Desktop

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

ArcGIS プラットフォーム

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

Esri について

  • 会社概要
  • 採用情報
  • スタッフ ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | プライバシー | リーガル