メインコンテンツまでスキップ

新しいSQLエディタでクエリを記述します。

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

コンピュートに接続する

クエリを実行するには、SQLウェアハウスに対して少なくともCAN USE権限が必要です。エディター上部付近にあるドロップダウンメニューを使用して、利用可能なオプションを確認できます。リストを絞り込むには、検索ボックスにテキストを入力してください。

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

デフォルトのSQLウェアハウスが設定されている場合、SQLエディタはクエリを作成する際に自動的にそれを使用します。無事ウェアハウスが設定されていない場合は、利用可能なウェアハウスのアルファベット順のリストから選択します。 後続のクエリでは、最後に選択したウェアハウスが使用されます。 大丈夫ウェアハウスを設定するには、 「ユーザーレベルの大丈夫ウェアハウスを設定する」を参照してください。

SQLウェアハウスの横にあるアイコンは、ステータスを示しています。

  • ランニング実行中
  • 停止しました停止
注記

リストにSQLウェアハウスが表示されない場合は、ワークスペース管理者にお問い合わせください。

クエリを実行すると、選択したSQLウェアハウスが自動的に再起動します。SQLウェアハウスを開始するその他の方法については、「SQLウェアハウスの開始」を参照してください。

アセットを閲覧してヘルプを入手

SQLエディタの左側のペインを使用して、ワークスペースファイルを探したり、データオブジェクトを表示したり、Genie Codeからヘルプを取得したりできます。

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

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

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

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

メタデータの読み取り権限がある場合、SQLエディタのスキーマブラウザーに利用可能なデータベースとテーブルが表示されます。カタログエクスプローラーからデータオブジェクトを参照することもできます。

アクティブなコンピュートを使用せずに、カタログ エクスプローラーで Unity カタログで管理されるデータベース オブジェクトをナビゲートできます。 Unity Catalogで管理されていないhive_metastoreおよびその他のカタログのデータを探索するには、適切な権限でコンピュートに接続する必要があります。 Databricks を使用したデータガバナンスを参照してください。

注記

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

クリックスキーマアイコンを更新スキーマブラウザの上部付近にあるボタンをクリックすると、スキーマが更新されます。検索バーにテキストを入力すると、名前でアセットを絞り込むことができます。クリックフィルターアイコン。フィルターアイコンをクリックすると、オブジェクトを種類別に絞り込むことができます。

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

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. (オプション)編集が完了したら、 「保存」 をクリックします。無事までに、クエリはユーザーのホームに保存されます。 クエリを別の場所に保存するには、保存先のフォルダーを選択して 「移動」 をクリックします。

注記

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

データソースのクエリー

クエリソースは、クエリ自体に完全修飾テーブル名を指定するか、ドロップダウンセレクターからカタログとスキーマの組み合わせを選択し、クエリ内のテーブル名と組み合わせることで識別できます。クエリ内の完全修飾テーブル名は、SQLエディタのカタログセレクタとスキーマセレクタを上書きします。テーブル名または列名にスペースが含まれている場合は、SQLクエリ内でそれらの識別子をバッククォートで囲んでください。

注記

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

以下の例は、カタログに保存できるさまざまなテーブル状オブジェクトに対してクエリを実行する方法を示しています。

標準テーブルまたはビューを照会する

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

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

メトリクス ビューのクエリ

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

すべての測定評価は、 MEASURE関数で囲む必要があります。集計関数measure参照してください。

SQL

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コードの最適化」を参照してください。

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

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

デフォルトでは、SQLエディタはタブを使用するため、複数のクエリを同時に開いて編集できます。新しいタブを開くには、 [+] をクリックし、 [新しいクエリを作成] または [既存のクエリを開く] を選択します。 既存のクエリを開くを クリックすると、クエリの一覧が表示されます。 「おすすめ」 タブでは、あなたの利用状況に基づいて厳選されたおすすめ商品リストが表示されます。 「すべて」 タブを使用して、アクセス権のあるすべてのクエリを検索します。

既存の検索ダイアログを開き、「おすすめ」タブに、おすすめの検索クエリ、最近の検索クエリ、お気に入りを表示します。

クエリを保存する

新しいSQLエディタのクエリ内容は、継続的に自動保存されます。 「保存」 ボタンは、ドラフトクエリの内容をワークフローやレガシーアラートなどの関連アセットに適用するかどうかを制御します。クエリが 「実行所有者」の 認証情報と共有されている場合、クエリの所有者のみが 「保存」 ボタンを使用して変更を反映できます。認証情報が 「閲覧者として実行」 に設定されている場合、少なくともCAN MANAGE権限を持つユーザーであれば誰でもクエリを保存できます。

ソース管理クエリ

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