テーブル エクスプローラでクエリを作成する

この機能に関するサポートをリクエストする場合、またはフィードバックを提供する場合は、bq-studio-product-team@google.com までメールをお送りください。

このドキュメントでは、テーブル エクスプローラを使用してテーブルデータを調べ、データ探索クエリを作成する方法について説明します。

テーブル エクスプローラについて

テーブル エクスプローラでは、テーブルデータを視覚的に探索し、テーブル フィールドの選択に基づいてクエリを自動的に作成できます。

テーブル エクスプローラでは、確認するテーブル フィールドを選択します。一度に選択できるテーブル フィールドは 10 個までです。

テーブル エクスプローラでは、選択したフィールドがインタラクティブなカードとして表示されます。各フィールドで最も一般的な値が count 列で並べ替えられ、最大 10 個まで表示されます。カードを操作するには、詳しく調べるフィールドと個別の値を選択します。テーブル エクスプローラは、選択内容に基づいてデータ探索クエリを作成します。

このクエリをクエリエディタの新しいクエリにコピーすることも、テーブル エクスプローラでクエリを適用することもできます。クエリを適用すると、テーブル エクスプローラがクエリを実行し、表示されているカードを更新してクエリ結果を表示します。テーブルデータの探索を続けるには、更新されたカードからさらにフィールドや値を選択します。

制限事項

  • テーブル エクスプローラは、BigQuery テーブル、BigLake テーブル、外部テーブル、ビューで使用できます。
  • テーブル エクスプローラでは、一度に 1 つのテーブルを探索できます。この機能では、複数のテーブルの同時探索や、JOIN オペレーションなどのクロステーブル オペレーションの生成はサポートされていません。
  • テーブル エクスプローラは、テーブル フィールドと一意の値の選択を直接反映する SQL クエリを作成します。テーブル エクスプローラで作成したクエリを実行することも、クエリエディタで編集することもできます。テーブル エクスプローラには、SQL クエリの生成、完成、説明を支援する AI 機能はありません。
  • 列レベルのアクセス制御(ACL)または制限付きユーザー権限が設定されているテーブルのテーブルデータを探索し、クエリを生成するには、選択したすべてのフィールドに対する読み取りアクセス権が必要です。生成されたクエリを実行するには、十分な権限が必要です。

料金

テーブル エクスプローラは、選択したテーブル フィールドと個別の値に基づいてクエリを実行し、テーブル探索の結果を表示します。これらのクエリには、コンピューティング料金が適用されます。テーブル エクスプローラには、クエリごとに処理されるデータの量が表示されます。このデータ量を確認してから、テーブル フィールドの選択を行い、クエリの実行をトリガーします。

テーブル エクスプローラで生成されたクエリを実行すると、コンピューティング料金が発生することもあります。

BigQuery コンピューティングの料金の詳細については、料金をご覧ください。

始める前に

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery API.

    Enable the API

必要なロールと権限

テーブルデータの表示とテーブル エクスプローラでのクエリの生成に必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与の詳細については、アクセス権の管理をご覧ください。

これらの事前定義ロールには、テーブルデータを表示し、テーブル エクスプローラでクエリを生成するのに必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

テーブルデータを表示し、テーブル エクスプローラでクエリを生成するには、次の権限が必要です。

  • クエリを実行するプロジェクトに対する bigquery.jobs.create。データの保存場所は関係ありません。
  • データを探索するすべてのテーブルとビューに対する bigquery.tables.getData

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

BigQuery Identity and Access Management(IAM)の詳細については、IAM によるアクセス制御をご覧ください。

テーブル内のデータを探索してクエリを作成する

テーブルデータを確認し、選択したテーブル フィールドと値に基づいてクエリを作成するには、次の操作を行います。

  1. Google Cloud コンソールで、[BigQuery Studio] に移動します。

    BigQuery Studio に移動

  2. [エクスプローラ] ペインで、クエリを作成するテーブルを選択します。

  3. [テーブル エクスプローラ] タブをクリックし、[フィールドを選択] をクリックします。

  4. [フィールドの選択] ペインで、最大 10 個のテーブル フィールドを選択して分析します。

  5. パーティション分割テーブルの場合は、[パーティショニング フィルタ] セクションでカスタム パーティショニング フィルタを設定します。テーブルを探索する際に、パーティション フィルタを使用すると、課金対象の計算を削減できます。

    1. [カスタム パーティショニング フィルタを適用する] を選択します。

    2. 表示された設定フィールドで、パーティショニング フィルタを構成します。

    フィルタ設定の表示は、テーブルのパーティション タイプ(時間、日、月、年、範囲)によって異なります。

  6. [保存] をクリックします。

    [保存] をクリックすると、BigQuery はクエリを実行して、選択したフィールドの共通の値を表示します。この操作で料金が発生します。処理されるデータの量は、[フィールドの選択] ペインの上部に表示されます。

    テーブル エクスプローラには、選択したフィールドがカードとして表示されます。Count 列で並べ替えられた最も一般的な値のリストに、最大 10 個までの値が表示されます。[生成されたクエリ] セクションには、同じデータを表示するために実行できるクエリが表示されます。

  7. (省略可)結果を変更するには、次の方法をお試しください。

    1. 表示されたフィールドのカードで、個別の値を選択してデータをさらにフィルタします。
    2. 変更を元に戻すには、[リセット] をクリックします。
    3. [生成されたクエリ] セクションで、[クエリにコピー] をクリックして、生成されたコードをクエリエディタの新しい無題のクエリにコピーします。新しく作成されたクエリのタブで、クエリの編集、実行、管理を行うことができます。
  8. 生成されたクエリを実行するには、[適用] をクリックします。

    BigQuery が生成されたクエリを実行し、表示されたカードにクエリの結果を表示します。

  9. テーブルの探索を続行するには、更新されたカードから新しいフィールドまたは個別の値を選択します。

トラブルシューティング

Access Denied: Project [project_id]: User does not have bigquery.jobs.create
permission in project [project_id].

このエラーは、プロジェクトでクエリジョブを作成する権限がプリンシパルにない場合に発生します。

解決策: 管理者が、クエリを実行するプロジェクトに対する bigquery.jobs.create 権限を付与する必要があります。クエリされたデータへのアクセスに必要な権限に加えて、この権限が必要になります。

BigQuery の権限の詳細については、IAM でのアクセス制御をご覧ください。

次のステップ