SQL Runner を使用したクエリと Explore の作成

SQL Runner は、データベースに直接アクセスし、そのアクセスをさまざまな方法で活用できます。SQL Runner を使用すると、スキーマ内のテーブルの操作、SQL クエリからのアドホック Explore の使用、データに対する事前に記述されたクエリの実行、SQL Runner の履歴の参照、結果のダウンロード、クエリの共有、派生テーブルとして LookML プロジェクトへの追加など、さまざまな便利なタスクを簡単に実行できます。

このページでは、SQL Runner でクエリを実行する方法、アドホックの Explore を作成する方法、SQL Runner を使用してクエリをデバッグする方法について説明します。詳細については、以下のドキュメントをご覧ください。

SQL Runner でクエリを実行する

データベースでクエリを実行するには、SQL クエリをゼロから作成するか、Explore を使用してクエリを作成するか、LookML モデルに対してクエリを実行します。履歴を使用して、以前のクエリを再実行することもできます。

SQL クエリをゼロから作成する

SQL Runner を使用すると、データベースに対して独自の SQL クエリを記述して実行できます。Looker では、記述したのと同じようにクエリがデータベースに渡されるため、SQL クエリの構文がご利用のデータベース言語に対して有効であることを確認してください。たとえば、各言語には、関数に渡す特定のパラメータを持つ少し異なる SQL 関数があります。

  1. [SQL クエリ] 領域をクリックし、SQL コマンドを入力します。
  2. 必要に応じて、フィールド リスト内のテーブル名またはフィールドをダブルクリックして、カーソルの位置にあるクエリに含めます。
  3. [実行] をクリックして、データベースに対してクエリを実行します。
  4. [結果] 領域で結果を表示します。SQL Runner は、最大 5,000 行のクエリ結果セットを読み込みます。ストリーミングをサポートする SQL 言語の場合、結果をダウンロードして結果セット全体を確認できます。

一部の SQL プログラムでは、複数のクエリを連続して実行できます。ただし、SQL Runner では、一度に 1 つのクエリしか実行できません。また、SQL Runner のクエリには、空白文字を含めて 65,535 文字の制限があります。

好みのクエリがあれば、プロジェクトへのクエリの追加派生テーブルの LookML の取得クエリの共有を行うことができます。

SQL Runner を使用して、新しいクエリを試したり、既存のクエリをテストしたりすることもできます。SQL Runner のエラーのハイライト表示は、クエリのテストとデバッグに役立ちます。

Explore を使用して SQL クエリを作成する

Explore を使用してクエリを作成し、そのクエリの SQL コマンドを SQL Runner で取得することもできます。

  1. Explore で、データバーの [SQL] タブをクリックします。
  2. SQL クエリのテキストを選択して、SQL Runner にコピーします。
  3. [SQL Runner で開く] または [SQL Runner で説明] をクリックして、SQL Runner でクエリを開きます。

SQL Runner の [SQL Query] 領域にクエリが追加されたら、[Run] をクリックしてデータベースをクエリできます。または、クエリを編集し、新しいクエリを実行することもできます。

SQL Runner によるビジュアリゼーションの作成

Looker 管理者が SQL Runner Vis Labs 機能を有効にしている場合は、SQL Runner で直接ビジュアリゼーションを作成できます。

[SQL Runner Vis] を有効にすると、SQL Runner パネルが再編成されます。左側にビジュアリゼーション パネル、中央に結果パネル、クエリパネルが下部に表示されます

  1. SQL クエリを作成して実行したら、[ビジュアリゼーション] タブを開いてビジュアリゼーションを表示し、Explore ページと同様にビジュアリゼーション タイプを選択します。
  2. ビジュアル表示は [設定] メニューで編集できます。
  3. URL を共有して、SQL Runner で作成したビジュアリゼーションを共有できます。ビジュアリゼーションの [設定] メニューを使用して行ったカスタマイズは保存され、リンクは変更されません。

SQL Runner の可視化の仕組みについて、次の点に注意してください。

  • 結果テーブルと可視化では、数値フィールドがメジャーとして解釈されます。
  • 完全なフィールド名は、結果テーブルと可視化で常に使用されます。そのため、[設定] メニューの [項目全体を表示] が無効になります。
  • カスタム フィールド、表計算、ピボット、列の合計、小計を使用するには、SQL Runner クエリを調べてください。
  • 静的マップ(リージョン)の可視化は SQL Runner の可視化ではサポートされていませんが、緯度と経度のデータを使用する地図(地図と静的地図(ポイント)の可視化)はサポートされています。
  • タイムラインの可視化は、SQL Runner の可視化ではサポートされていません。

ディメンションのピボット

SQL Runner のビジュアリゼーションで 1 つ以上のディメンションごとにピボットするようにクエリ結果を編集できます。フィールドをピボットする手順は次のとおりです。

  1. [結果] 領域で列(歯車)メニューをクリックして、列オプションを表示します。
  2. [Pivot Column] をクリックします。

ピボットされた結果は、SQL Runner のビジュアリゼーションに表示されます。

[結果] 領域の結果はピボットされず、

結果をピボット解除するには、ピボットになった列の歯車メニューをクリックして、[列のピボット解除] を選択します。

フィールド タイプの変更

SQL Runner は、クエリ結果と可視化を表示すると、数値フィールドを自動的に測定し、数値以外のフィールドをディメンションとして自動的に解釈します。デフォルトのフィールド タイプをオーバーライドして、ディメンションをメジャーに変換(またはその逆)することができます。手順は次のとおりです。

  1. [結果] 領域で列(歯車)メニューをクリックして、列オプションを表示します。
  2. [ディメンションに変換] または [メジャーに変換] をクリックして、フィールドの種類を変更します。

可視化には新しいフィールド タイプが表示されます。

LookML モデルに対するクエリの実行

SQL Runner を使用すると、データベースに直接ではなく、LookML モデルに対して SQL クエリを記述して実行できます。モデルに対してクエリを作成する際には、LookML 置換演算子${view_name.field_name}${view_name.SQL_TABLE_NAME} など)を使用できます。これにより、派生テーブルのトラブルシューティングを行うためのクエリを作成する際に、時間を節約できます。

Looker は LookML の置換をすべて解決してから、クエリをデータベースに渡すため、クエリはデータベース言語に対して有効な SQL である必要があります。たとえば、各言語には、関数に渡す特定のパラメータを持つ少し異なる SQL 関数があります。

SQL Runner で LookML モデルに対してクエリを実行するには:

  1. [モデル] タブをクリックします。
  2. クエリを実行するモデルを選択します。
  3. [SQL クエリ] 領域をクリックし、LookML フィールドを使用して SQL クエリを入力します。
  4. 必要に応じて、ビューリストのビューをダブルクリックして、カーソル位置のクエリにビューを含めます。
  5. ビュー内のフィールドのリストを表示するには、[Views] セクションでビューをクリックします。必要に応じて、フィールド リストのフィールドをダブルクリックすると、カーソルの位置のクエリにそのフィールドを含めることができます。
  6. [Prepared SQL Query] 領域では、LookML の置換が SQL に変換された後に作成された SQL クエリを確認できます。
  7. [実行] をクリックして、モデルに対してクエリを実行します。
  8. [結果] 領域で結果を表示します。SQL Runner は、最大 5,000 行のクエリ結果セットを読み込みます。ストリーミングをサポートする SQL 言語の場合、結果をダウンロードして結果セット全体を確認できます。

好みのクエリがあれば、プロジェクトへのクエリの追加派生テーブルの LookML の取得クエリの共有を行うことができます。

SQL Runner を使用して、新しいクエリを試したり、既存のクエリをテストしたり、結果から新しい Explore を開いたりすることもできます。SQL Runner のエラーのハイライト表示は、クエリのテストとデバッグに役立ちます。

SQL Runner からフィールドの LookML を表示する

[モデル] タブのフィールド リストから、フィールドの LookML を確認することもできます。フィールド リストでフィールドにカーソルを合わせ、フィールド名の右側にある Looker アイコンをクリックします。

Looker で LookML IDE が開き、フィールドが定義されているファイルが読み込まれます。

SQL Runner の履歴

SQL Runner で、実行したすべてのクエリの最近の履歴も確認できます。

履歴を表示するには、ナビゲーション パネルの最上部にある [履歴] タブをクリックします。SQL Runner は、データベース接続で実行されるすべてのクエリを表示します。赤は、エラーのために実行されなかったクエリを示します。

履歴内のクエリをクリックして SQL Runner に入力し、[実行] をクリックしてクエリを再実行します。

クエリの並べ替え

テーブルの並べ替え順序は、並べ替えられた項目名の横に上矢印または下矢印で示されます。これは、結果の昇順か降順かによって決まります。複数の列で並べ替えるには、Shift キーを押しながら、並べ替える順序で列ヘッダーをクリックします。また、並べ替え順は、並べ替え順序を他のフィールドと比較する番号や、並べ替えの方向を示すフィールド名の横の矢印(昇順または降順)、フィールド名にカーソルを合わせるとポップアップで示されます。

詳細と例については、Looker でのデータ探索のドキュメント ページでデータの並べ替えのセクションをご覧ください。

クエリの共有

SQL Runner 内のクエリは、SQL Runner アクセス権を持つ他のユーザーと共有できます。クエリを共有するには、URL バーの URL をコピーします。

結果をダウンロードしています

SQL クエリを実行すると、結果をさまざまな形式でダウンロードできます。

  1. [SQL Query] ボックスにクエリを記述します。(この時点では、SQL Runner でクエリを実行する必要はありません)。
  2. 右上にある歯車メニューから [Download] を選択します。
  3. ダウンロードのファイル形式(テキスト ファイル、CSV、JSON など)を選択します。
  4. [ブラウザで開く] をクリックして結果を新しいブラウザ ウィンドウに開くか、[ダウンロード] をクリックして結果をパソコン上のファイルにダウンロードします。

    [ブラウザで開く] または [ダウンロード] をクリックすると、Looker はクエリを再実行してダウンロードを実行します。

ストリーミングをサポートする SQL 言語の場合、SQL Runner の [ダウンロード] オプションでは、結果セット全体がダウンロードされます。ストリーミングをサポートしていない SQL 言語の場合、SQL Runner の [ダウンロード] オプションは、[結果] セクションに表示されているクエリの行のみをダウンロードします(5,000 行まで)。

列の値のコピー

SQL Runner の [結果] セクションから列の値をコピーできます。列(歯車)のメニューをクリックして、値をクリップボードにコピーします。そこから、テキスト ファイルや Excel ドキュメントなどの場所に列の値を貼り付けます。

Looker 管理者が SQL Runner Vis Labs 機能を有効にしている場合は、列の歯車メニューにその他のオプションもあります。

結果表の列を手動で移動、固定サイズ変更することもできます。

SQL Runner クエリの費用の見積もり

BigQueryMySQLAmazon RDS for MySQLSnowflakeAmazon RedshiftAmazon AuroraPostgreSQL、Cloud SQL for PostgreSQL、Microsoft Azure PostgreSQL の接続の場合、SQL Runner はクエリの費用の見積もりを提供します。SQL クエリを入力すると、クエリに必要なデータ量が計算され、[Run] ボタンの近くに情報が表示されます。

BigQuery、MySQL、Amazon RDS for MySQL の接続の場合、費用の見積もりは常に有効になっています。Snowflake、Amazon Redshift、Amazon Aurora、PostgreSQL、Cloud SQL for PostgreSQL、Microsoft Azure PostgreSQL のデータベース接続の場合は、接続の [Cost Estimate] オプションを有効にする必要があります。費用の見積もりは、接続の作成時に有効にできます。既存の接続の場合、Looker の [Admin] パネルの [Database] セクションの [Connections] ページで接続を編集できます。

アドホックの Explore を作成する

SQL Runner から SQL クエリまたはデータベース テーブルのアドホック Explore を作成することで、データに関する分析情報を迅速に取得できます。Looker Explore では、フィールドの選択、フィルタの追加、結果の可視化、SQL クエリの作成を行うことができます。

SQL Runner からアドホックの Explore を開く方法は 2 つあります。

  • SQL Runner のクエリ結果を調べる
  • SQL Runner のテーブルリストから探索する

SQL Runner クエリ結果を調べる

SQL Runner を使用すると、SQL クエリから Explore を開くことができます。これにより、SQL Runner に記述されたクエリから一時的な Explore が作成されます。これにより、クエリで返される内容をテストし、結果を可視化できます。この方法はどのクエリにも使用できますが、派生テーブルに使用する予定のクエリをテストする場合に特に便利です。

Looker 管理者が SQL Runner Vis Labs 機能を有効にしている場合は、SQL Runner で直接ビジュアリゼーションを作成できます。

  1. SQL Runner を使用して、使用する SQL クエリを作成します。
  2. 右上の歯車メニューで [Explore] をクリックします。新しい Explore が開き、SQL クエリがモデルに保存されているテーブルのように探索できます。
  3. この Explore に URL をコピーして共有できます。
  4. このクエリをプロジェクトから直接派生テーブルとして追加するには、[プロジェクトへのビューの追加] をクリックします。

SQL Runner で探索中にカスタム フィールドを作成する

カスタム フィールド機能にアクセスできる場合は、カスタム フィールドを使用して SQL Runner でモデル化されていないフィールドを可視化できます。前のセクションで説明したように、歯車メニューから [Explore] をクリックします。次に、フィールド選択ツールで次の操作を行います。

SQL Runner に一覧表示されているテーブルを探索する

[Database] タブの [Explore Table] オプションを使用して、接続内のテーブルに対するアドホック Explore を作成します。これにより、Looker をモデル化する前にテーブルで使用し、LookML ビューと同じようにテーブルを探索できます。

テーブルの Explore を開いたら、テーブルをプロジェクトに追加するかどうかを決めることができます。また、Explore の [SQL] タブを使用して、Looker からデータベースに送信される SQL クエリを確認し、[Open in SQL Runner] ボタンを使用してクエリを SQL Runner に戻すこともできます。

  1. [データベース] タブをクリックします。
  2. SQL Runner で、テーブルの歯車アイコンをクリックし、[テーブルを探索] を選択します。
  3. Looker は、テーブルのビューを使用して一時モデルを生成し、Explore を表示します。
  4. Looker では、テーブル内の列ごとにディメンション フィールドが提供されます。(これは、Looker がプロジェクト開始時にモデルを生成する方法です)。
  5. Looker には、任意の日付フィールドの時間枠が自動的に含まれます。
  6. Looker にはカウント指標も含まれています。

[Explore Table] オプションを使用する場合、Explore に関連付けられた LookML ファイルはありません。これはテーブルのアドホック ビューです。

SQL Runner を使用したデバッグ

SQL Runner は、クエリで SQL エラーをチェックする際にも便利です。

SQL ランナーエラーのハイライト表示

SQL Runner は SQL コマンドのエラーの場所をハイライト表示し、エラー メッセージにエラーの位置を含めます。

提供される位置情報は、データベース言語によって異なります。たとえば、MySQL ではエラーを含む行番号が、Redshift ではエラーの文字位置が示されます。他のデータベース言語では、このような動作がある場合があります。

SQL Runner は、SQL コマンドの 最初の構文エラーの場所を赤で下線で示し、その行を &xt で囲みます。「x」にカーソルを合わせると、エラーの詳細が表示されます。その問題を解決したら、[実行] をクリックして、クエリにエラーがあるかどうかを確認します。

SQL Runner を使用して Explore のエラーを確認する

Explore で SQL 構文のエラーが発生した場合は、SQL Runner を使用してエラーの場所とエラーの種類(スペルミスやコマンドの欠落など)を確認できます。

  1. Explore で、データバーの [SQL] タブをクリックします。
  2. [SQL Runner で開く] をクリックして、SQL Runner でクエリを開きます。

これにより、Explore によって生成された SQL が SQL Runner にコピーされます。上で説明したように、SQL Runner は SQL コマンドのエラーの場所をハイライト表示し、エラー メッセージにエラーの位置を含めます。その後、エラーを修正し、SQL Runner でクエリを再実行してエラーを修正します。

SQL Runner を使用して派生テーブルのエラーを確認する

SQL Runner を使用して派生テーブルの SQL エラーを確認する方法については、Looker コミュニティの記事 SQL Runner を使用して派生テーブルをテストするをご覧ください。