LoginSignup
0
0

More than 1 year has passed since last update.

Query snippets | Databricks on AWS [2022/6/1時点]の翻訳です。

本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。

最初から何かを作るよりも、以前の作業内容を複製し、編集する方が簡単です。これは特に一般的なJOIN文や複雑なCASE文では顕著となります。クエリーのリストが増加すると、どのクエリーが必要な文を含んでいるのかを思い出すことが難しくなります。

クエリースニペットは、オートコンプリートを用いて共有、軌道できるクエリーのセグメントです。

こちらがシンプルなスニペットの例となります。

SQL
JOIN organizations org ON org.id = ${1:table}.org_id

クエリースニペットの作成

  1. サイドバーの下部にあるSettingsをクリックし、User Settingsを選択します。
  2. Query Snippetsタブをクリックします。
  3. Create Query Snippetをクリックします。
  4. Triggerフィールドで、スニペットのトリガーを入力します。
  5. オプションで説明文を入力します。
  6. Snippetフィールドにスニペットを入力します。
  7. Createをクリックします。

挿入ポイント

${1:table}はプレースホルダーテキストを伴う挿入ポイントです。Databricks SQLがスニペットをレンダリングする際、ドルマーク$とカーリーブレース{}は削除され、単語tableがリプレースメントとしてハイライトされます。

注意
実行時にデフォルト値を上書きする際にプレースホルダーテキストを使うことができます。

ドルマークとカーリーブレース${}を用いて、整数値のタブ順序をラッピングすることで挿入ポイントを割り当てることができます。先頭にコロンがついているテキストプレースホルダーはオプションですが、スニペットに馴染みのないユーザーにとっては有用です。

Databricks SQLはスニペットをレンダリングする際、

SQL
AND (invoices.complete IS NULL OR invoices.complete <> '${2}')
AND (invoices.canceled IS NULL OR invoices.canceled <> '${1}')
AND (invoices.modified IS NULL OR invoices.modified_date <> '${0: this_date}')

テキスト挿入キャラットはクオートマーク''の間の2行目にジャンプします。Tabを押すと、キャラットは最初の行にジャンプします。再度Tabを押すと、キャラットは3行目にジャンプし、希望する値を入力するために、this_dateがハイライトされます。

注意
ゼロの挿入ポイント${0}は常にタブの順番の最後に来ます。

クエリースニペットの挿入

オートコンプリートを有効にしていると、クエリースニペットエディタで定義したトリガーの単語をタイプすることでSQLエディターからスニペットを呼び出すことができます。オートコンプリートはデータベースの他のキーワードと同じようにスニペットを提案します。

注意
オートコンプリートが無効になっていても、Ctrl + Spaceを押して、クエリースニペットをトリガーする単語を入力することでクエリースニペットを呼び出すことができます。これは、お使いのスキーマ(データベース)で5000トークンを超えた場合にも必要になります。

以下にスニペットのアイデアを示します。

Databricks 無料トライアル

Databricks 無料トライアル

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0