Appearance
SQLブロック
ドキュメントページ内のSQLブロックから、 SQL の編集・実行、実行結果の表示、カラム統計情報の表示、チャート作成が行なえます。ドキュメントページで / から SQLブロック を選択して追加できます。
主な機能
- SQL の編集と実行
- オートコンプリート、ハイライト、フォーマット
/によるテーブル検索や参照の挿入- 他の SQLブロックへの参照(SQL チェイン)とパラメータの展開・上書き
- チャートの追加
- カラム統計の追加
- コードスニペット
- 保存済クエリの参照、および SQLを保存 による保存済クエリの作成(クエリ)
- SQL の実行結果からの エクスプローラ 起動
- 表示モード
- キャッシュ
参照
SQL エディタで / から、次を参照できます。
| 参照先 | 挿入の例 | 説明 |
|---|---|---|
| 他の SQLブロック | /sql/ | 参照先の SQL をサブクエリとして展開します |
| テーブル | /table/ | カタログ上のテーブルを選択できます |
| パラメータ | /param/ | パラメータの値を埋め込みます |
| 保存済クエリ | /query/ | 挿入時点の SQL を埋め込みます。ソース更新時は 埋め込みクエリを更新 で反映できます。詳細は クエリ を参照してください |
| インラインテーブル | /inline-table/ | ノートブック内のインラインテーブルを実行時に展開します |
参照関係は、ノートブックの 依存関係 図でも確認できます。SQLブロックのメニューから 依存関係を表示 を開けます。
SQLブロックの参照
他の SQLブロックを参照すると、実行時に参照先の SQL がサブクエリとして展開されます。共通の抽出を切り出して再利用したり、ブロック単位で中間結果を確認しながら組み立てたりできます。
- 同一ページ内の SQLブロックに加え、同じノートブック内の他のドキュメントページの SQLブロックも参照できます
- 他ページの参照は、
ページ名.SQLブロック名のように表示されます - 循環参照はエラーになります
挿入
- SQL エディタで
/sql/と入力するか、/の候補から 他のSQLブロックのSQLを参照 を選びます - 参照したい SQLブロックを選びます
展開時の設定
参照チップにカーソルを合わせると、ポップアップの 設定 から次を変更できます。
| 項目 | 説明 |
|---|---|
| ()で囲まない | 既定はオフです。オフのとき、展開結果は ( ) で囲まれます。オンにすると囲みを省略します |
| 末尾にエイリアスを付与 | ()で囲まない がオフのときだけ選べます。展開結果の末尾に AS とその SQLブロック名を付けます |
パラメータの展開と上書き
参照先の SQLブロック内にパラメータ参照がある場合、展開に使われる値は次のとおりです。
| 参照先が使っているパラメータ | 展開に使われる値 |
|---|---|
| ノートブック共通 | 参照元(この SQLブロックがあるページ)に保持されている値 |
| ページ固有 | 参照元ページに同名の定義が無い場合は、参照先ページの値 |
参照元のページでパラメータ依存を切り離したい場合は、参照チップのポップアップで 内部のパラメータ参照を上書き を設定します。
| 方法 | 説明 |
|---|---|
| 他のパラメータで上書き | 同じ型の別パラメータの値で置き換えます |
| 固定値で上書き | 固定値を指定します |
| 上書きしない | 上表の規則どおりに展開します |
グリッドページの SQL 実行結果・チャートから参照している場合も、同様に上書きできます。操作の詳細は パラメータの上書き を参照してください。
チャートの追加
SQL の実行が成功すると、実行結果ヘッダの チャート からチャートウィザードを開けます。ディメンション・メトリクスなどを設定し、実行結果の直下にチャートを追加します。
- チャート種別や設定の詳細は チャート を参照してください
- エクスプローラ からもチャートを追加できます
- 追加したチャートは グリッドページに追加 で グリッドページ にも配置できます
/から ブロックチャート を挿入し、同じページの SQLブロックの実行結果を参照する方法もあります(ドキュメントページ)
カラム統計の追加
実行結果ヘッダの カラム統計 から、結果カラムの分布や要約統計を追加できます。対象カラムを選ぶと別の SQL が発行され、カラム統計ブロックが追加されます。
表示される項目はデータ型により異なります。
| 項目 | 説明 |
|---|---|
| データ型 | カラムのデータ型です |
| NULL値の数 | NULL の件数と割合です |
| ユニーク数* | ユニーク値の件数です |
| 最大値 / 最小値 / 平均値 | 数値・時刻などで表示されます |
| 分位数* | 25 / 50 / 75 パーセンタイルです |
| 文字数* | 文字列の長さ分布です |
| 頻度* | 出現頻度の高い値です |
| ヒストグラム* | 数値・時刻などの分布です |
* の付いた値は近似関数で計算されます。
利用できるコネクションは BigQuery / Snowflake / Databricks です。Redshift では利用できません。
SQL の内容やパラメータなどが変わった場合は、統計の再実行が必要です。
表示モード
SQLブロック左上のアイコンから、表示モードを切り替えられます。この切り替えは他のユーザーには同期されません。デフォルト設定は、SQLブロックのメニュー ⋯(横三点アイコン) > デフォルト表示 から変更できます。
| モード | 説明 |
|---|---|
| すべて表示 | SQL・実行結果・チャートを表示します |
| 実行結果のみ表示 | 実行結果とチャートを表示します |
| すべて非表示 | SQL・実行結果・チャートを非表示にします |
SQLを保存
SQLブロック右上メニューの SQLを保存 から、ブロック内容を保存済クエリとして登録できます。
- 他の SQLブロック参照・保存済クエリ参照は展開済みで保存されます
- パラメータは、その時点の値に置き換えて保存されます
保存済クエリ側では、パラメータ埋め込みや他クエリ参照はできません。
コードスニペット
SQL エディタの コードスニペットの管理 から、入力補完用のスニペットを作成・編集できます。コードスニペットの補完は既定で有効です。SQLエディタ設定の コードスニペットの補完を有効化 をオフにすることで無効化できます。
| 項目 | 説明 |
|---|---|
| パーソナルスニペット / 共有スニペット | 個人用(ユーザー単位)か、ワークスペース共有かを選びます |
| 入力補完用キー | このキーを入力すると、補完候補からスニペットを呼び出せます |
| 挿入するコードスニペット | 補完選択時に挿入されるテキストです。補完後のカーソル位置は $$ で指定できます |
| 表示名 / 説明 | 任意です |
キャッシュ
SQLブロックの実行結果は、表示用にキャッシュされます。同一 SQL の過去の成功結果を再利用する仕組みで、ジョブ自体の保持期間は既定で 24 時間です。
- 表示用に保持する実行結果は最大 1,000 行です
- ノートブック編集では、既定で 24 時間以内なら新しいジョブの実行をスキップし、キャッシュを利用します
- キャッシュを使わずに実行する場合は、SQLブロックの 最新データで実行、またはノートブックの 最新データですべて実行 を使います
経路ごとの扱いは次のとおりです。
| 経路 | 表示用キャッシュ | 再利用期間の上書き |
|---|---|---|
| ノートブック編集 | 既定 24 時間。最新データで実行 / 最新データですべて実行 で回避できます | なし |
| レポート閲覧 | 同上 | レポート設定の キャッシュの有効期間(既定 24 時間。0 は無効。最大 24 時間、10 分単位) |
| 署名付き埋め込み | 同上 | トークン発行時の cache_max_age(既定・最大 86400 秒。0 は無効)。詳細は 署名付き埋め込み |
ウェアハウス側のキャッシュ(同一 SQL の DWH ネイティブキャッシュなど)は、コネクション設定では制御できません。
制約
カラムサジェスト等は、テーブルへの参照、または他の SQLブロックへの参照を使っている場合にのみ利用できます。文字列のテーブル ID や、保存済クエリ参照ではサジェストされません。