新しい SQL エディターでクエリを記述する

このページでは、新しい Databricks SQL エディターで SQL ウェアハウスに接続する方法、ファイルとデータを参照する方法、クエリを記述する方法について説明します。

コンピューティングに接続

クエリを実行するには、SQL ウェアハウスに対して少なくとも CAN USE アクセス許可が必要です。 エディターの上部近くにあるドロップダウンを使って、使用可能なオプションを見ることができます。 リストをフィルター処理するには、検索ボックスにテキストを入力します。

接続されている SQL ウェアハウス、最近のリソース、アクティブなリソースが表示され、ウェアハウスの実行状態インジケーターが強調表示されているコンピューティング セレクタードロップダウン。

既定の SQL ウェアハウスがある場合は、クエリの作成時に SQL エディターによって自動的に使用されます。 既定の倉庫が設定されていない場合は、使用可能な倉庫のアルファベット順の一覧から選択します。 後続のクエリでは、最後に選択したウェアハウスが使用されます。 既定のウェアハウスを設定するには、「 ユーザー レベルの既定のウェアハウスを設定する」を参照してください。

SQL ウェアハウスの横にあるアイコンは、次の状態を示します。

  • 実行中 実行中
  • 停止済み 停止済み

Note

SQL ウェアハウスが一覧にない場合は、ワークスペース管理者に問い合わせてください。

選んだ SQL ウェアハウスは、クエリの実行時に自動的に開始し直されます。 SQL ウェアハウスを開始するその他の方法については、「SQL ウェアハウスを開始する」をご覧ください。

資産を閲覧し、ヘルプを受ける

SQL エディターの左側のウィンドウを使用して、ワークスペース ファイルの検索、データ オブジェクトの表示、Genie Code からのヘルプの取得を行います。

SQL エディターの左側のウィンドウには、ワークスペース ファイル ブラウザー、スキーマ ブラウザー、Genie Code のタブが含まれています。

ワークスペース ファイルを参照する

フォルダー アイコン をクリックして、ワークスペース のユーザー フォルダーを開きます。 UI のこの部分からアクセスできるすべてのワークスペース ファイルに移動できます。

データ オブジェクトを参照する

ユーザーがメタデータ読み取りアクセス許可を持っている場合は、SQL エディターのスキーマ ブラウザーに使用できるデータベースとテーブルが表示されます。 データ オブジェクトは Catalog Explorer から参照することもできます。

アクティブなコンピューティングを使用せずに、カタログ エクスプローラーで Unity カタログ管理データベース オブジェクト間を移動できます。 unity カタログによって管理されていない hive_metastore およびその他のカタログ内のデータを探索するには、適切な特権を持つコンピューティングにアタッチする必要があります。 Azure Databricks を使用したデータ ガバナンスに関するページを参照してください。

Note

スキーマ ブラウザーまたは Catalog Explorer にデータ オブジェクトが存在しない場合は、ワークスペース管理者に問い合わせてください。

スキーマを更新するには、スキーマ ブラウザーの上部近くにある スキーマ更新アイコン をクリックします。 検索バーにテキストを入力して、アセットを名前でフィルター処理できます。 [ フィルター] アイコン をクリックします。フィルター アイコンをクリックして、種類別にオブジェクトをフィルター処理します。

ブラウザーでオブジェクトの名前をクリックすると、オブジェクトの詳細が表示されます。 たとえば、スキーマ名をクリックすると、そのスキーマ内のテーブルが表示されます。 テーブル名をクリックすると、そのテーブル内の列が表示されます。

Genie Code からヘルプを取得する

[ DB アシスタント] アイコンをクリックします。 Genie Code を使用してチャット ウィンドウを開く Genie Code アイコン。 提案された質問をクリックするか、独自の質問を入力して Genie Code と対話します。

クエリを作成する

SQL エディターでテキストを入力してクエリを作成できます。 スキーマ ブラウザーから要素を挿入して、カタログとテーブルを参照できます。

  1. SQL エディターでクエリを入力します。

    SQL エディターではオートコンプリートがサポートされています。 入力すると、オートコンプリートが入力補完を提案します。 たとえば、カーソル位置の有効な入力補完が列である場合、オートコンプリートは列名を提案します。 「select * from table_name as t where t.」と入力した場合、オートコンプリートでは ttable_name の別名であると認識して、table_name 内の列を提案します。 オートコンプリートを使用して クエリ スニペットを参照することもできます。

    ユーザーが sc を入力した後に sc としてエイリアス化されたテーブルの列名を示すオートコンプリート。

  2. (省略可能) 編集を完了したら、[保存] をクリックします。 既定では、クエリはユーザーのホーム フォルダーに保存されます。 クエリを別の場所に保存するには、ターゲット フォルダーを選択し、[ 移動] をクリックします。

Note

新しいクエリには、新 しいクエリ の名前が自動的に付けられ、作成タイムスタンプがタイトルに追加されます。 既定では、特定のフォルダー コンテキストなしで作成された新しいクエリは、ホーム ディレクトリの Drafts フォルダーに作成されます。 新しいクエリが保存または名前変更されると、 下書きから削除されます。

データソースの問合せ

クエリ自体で 完全修飾テーブル名 を使用するか、ドロップダウン セレクターからカタログとスキーマの組み合わせをクエリ内のテーブル名と共に選択することで、クエリ ソースを識別できます。 クエリの完全修飾テーブル名は、SQL エディターのカタログおよびスキーマ セレクターをオーバーライドします。 テーブルまたは列名にスペースが含まれている場合は、SQL クエリのバックティックでそれらの識別子をラップします。

Note

テーブルに返される結果の最大数は、64,000 行または 10 MB のいずれか小さい方です。

次の例では、カタログに格納できるさまざまなテーブルのようなオブジェクトに対してクエリを実行する方法を示します。

標準のテーブルまたはビューのクエリを実行する

次の例では、 samples カタログからテーブルを照会します。

SELECT
  o_orderdate,
  o_orderkey,
  o_custkey,
  o_totalprice,
  o_shippriority
FROM
  samples.tpch.orders

メトリック ビューのクエリを実行する

次の例では、サンプル カタログのテーブルをソースとして使用するメトリック ビューに対してクエリを実行します。 3 つの指標が評価され、Order MonthOrder Status にわたり集計されます。 Order Monthで並べ替えられた結果が返されます。 ワークスペースで同様のメトリック ビューを作成するには、「 チュートリアル: 結合を使用して完全なメトリック ビューを作成する」を参照してください。

すべてのメジャー評価は MEASURE 関数にラップされる必要があります。 集計関数measure参照してください。


SELECT
 `Order Month`,
 `Order Status`,
 MEASURE(`Order Count`),
 MEASURE(`Total Revenue`),
 MEASURE(`Total Revenue per Customer`)
FROM
 orders_metric_view
GROUP BY ALL
ORDER BY 1 ASC;

Genie Code を使用してクエリを最適化する

[DBアシスタント]アイコンをクリックすると、 エディターの右側にあるアシスタントアイコンで、クエリを書く際にインラインのヘルプや提案を得ることができます。 /optimizeスラッシュ コマンドは、クエリの評価と最適化をアシスタントに求めます。 詳細については、「 Python、PySpark、SQL コードの最適化」を参照してください。

Genie Code で /optimize コマンドを使用して生成された最適化されたクエリ

複数のクエリ タブを編集する

既定では、SQL エディターではタブが使用されるため、複数のクエリを同時に開いて編集できます。 新しいタブを開く場合は、+ をクリックし、[Create new query]\(新しいクエリの作成\) または [Open existing query]\(既存のクエリを開く\) を選択します。 [ 既存のクエリを開く ] をクリックすると、クエリの一覧が表示されます。 [ For you ] タブには、使用状況に基づいて厳選された一覧が表示されます。 [ すべて ] タブを使用して、アクセスできるクエリを検索します。

候補クエリ、最近使用したクエリ、お気に入りが表示された [For you] タブを表示する既存のクエリ ダイアログを開きます。

クエリを保存する

新しい SQL エディターでは、クエリの内容が継続して自動的に保存されます。 [保存] ボタンは、下書きのクエリ コンテンツを関連する資産 (ワークフローやレガシ アラートなど) に適用するかどうかを制御します。 クエリが所有者として実行の資格情報を使って共有されている場合は、クエリの所有者のみが [保存] ボタンを使って変更を反映できます。 資格情報が [ビューアーとして実行] に設定されている場合、少なくとも CAN MANAGE アクセス許可を持つユーザーはクエリを保存できます。

クエリのソース管理

Databricks SQL クエリ ファイル (拡張子: .dbquery.ipynb) は Databricks Git フォルダーでサポートされています。 Git フォルダーを使用すると、クエリ ファイルをソース管理したり、同じ Git リポジトリにアクセスする Git フォルダーを使用して他のワークスペースで共有したりできます。 Databricks Git フォルダー内のクエリをコミットまたは複製した後に新しい SQL エディターをオプトアウトする場合は、予期しない動作を回避するために、その Git フォルダーを削除して再度使用します。