SQL クエリ エディターを使用したクエリ
適用対象:✅SQL 分析エンドポイント、ウェアハウス、ミラー データベース
この記事では、Microsoft Fabric ポータルの SQL クエリ エディターを使用してクエリをすばやく効率的に記述する方法と、必要な情報を最適に表示する方法に関する提案について説明します。
- SQL 接続文字列を使用する複数のツールにより、ウェアハウス内のデータに対しクエリを実行するすることもできます。
- ビジュアル クエリ エディターを使用すると、グラフィカルにクエリを作成できます。
- データ プレビューでデータをすばやく表示できます。
SQL クエリ エディターでは、IntelliSense、コード補完、構文の強調表示、クライアント側の解析と検証がサポートされます。 データ定義言語 (DDL)、データ操作言語 (DML)、およびデータ制御言語 (DCL) ステートメントを実行できます。
Fabric ポータルの SQL クエリ エディター
SQL クエリ エディターは、T-SQL を使用してクエリを記述するためのテキスト エディターです。 組み込みの SQL クエリ エディターにアクセスするには:
リボンの [新しい SQL クエリ] ボタンを 使用して、新しいクエリ を作成します。
SQL テンプレートドロップダウン リストを選択すると、次の図に示すように、SQL クエリ ウィンドウに入力するコード テンプレートを使用して T-SQL オブジェクトを簡単に作成できます。
SQL クエリを操作すると、数秒ごとにクエリが自動的に保存されます。 クエリ タブに "保存中" インジケーターが表示され、クエリの保存中であることが示されます。
データプレビュー、クエリ、モデリングのためのタブ間のマルチタスク
データのプレビュー、クエリ、モデリングエクスペリエンスは、エディターでマルチタスクできる個々のタブとして開きます。 クエリを作成する場合は、データのプレビューの表示と、クエリを作成するテーブル間のリレーションシップの表示を切り替えることができます。 すべてのタブを表示または閉じるには、すべてのタブの右側にあるアイコンをクリックします。
クエリ結果の表示
T-SQL クエリを作成したら、[実行] を選択してクエリを実行します。
[結果] プレビューが [結果] セクションに表示されます。 返される行数が 10,000 行を超える場合、プレビューは 10,000 行に制限されます。 結果グリッド内の文字列を検索して、検索条件に一致するフィルター処理された行を取得できます。 [メッセージ] タブには、SQL クエリの実行時に返される SQL メッセージが表示されます。
ステータス バーには、クエリの状態、実行時間、結果で返される行と列の数が示されます。
[ビューとして保存]、[テーブルとして保存]、[Excel で開く]、[このデータを検索 (プレビュー)]、[結果の可視化] メニューを有効にするには、SQL クエリ エディターで SELECT
ステートメントを含む SQL ステートメントを強調表示にします。
ビューとして保存
クエリを選択し、[ビューとして保存] ボタンを使用してクエリをビューとして保存できます。 ビューを作成するアクセス権を持っているスキーマ名を選択し、ビューの名前を指定し、SQL ステートメントを確認してから、ビューの作成を確定します。 ビューが正常に作成されると、エクスプローラーに表示されます。
テーブルとして保存
[テーブルとして保存] を使用すると、クエリ結果をテーブルに保存できます。 結果を保存するウェアハウスを選択し、テーブルを作成するアクセス権を持っているスキーマを選択し、テーブル名を指定して、CREATE TABLE AS SELECT ステートメントを使用して結果をテーブルに読み込みます。 テーブルが正常に作成されると、エクスプローラーに表示されます。
Excel で開く
[Excel で開く] ボタンを選ぶと、Excel に対応する T-SQL クエリが開き、クエリが実行されて、結果をローカル コンピューター上の Microsoft Excel で操作できます。
Excel ファイルをローカル環境で操作するには、次の手順のようにします。
[続行] ボタンを選んだ後、ダウンロードされた Excel ファイルを Windows エクスプローラーで探します (たとえば、ブラウザーの [ダウンロード] フォルダー)。
データを表示するには、[保護されているビュー] リボンの [編集を有効にする] ボタンを選んでから、[セキュリティ警告] リボンの [コンテンツの有効化] ボタンを選びます。 両方を有効にすると、表示されたクエリの実行を承認するための次のダイアログが表示されます。
[実行] を選択します。
サインインに成功すると、スプレッドシートでデータが表示されます。
このデータを検索する (プレビュー)
このデータを探索する (プレビュー) には、クエリ結果のアドホック探索を実行する機能が用意されています。 この機能を使用すると、サイド・バイ・サイドのマトリックスとビジュアル ビューを起動して、完全な Power BI レポートを作成する前に、クエリ結果の背後にある傾向やパターンをよりよく理解できます。 詳細については、「Power BI サービス内のデータを探索する」を参照してください。
結果を視覚化する
[結果の視覚化] を使うと、SQL クエリ エディター内でクエリ結果からレポートを作成できます。
コピー
[コピー] ドロップダウンでは、データ グリッド内の結果や列名をコピーできます。 列名を使用して結果をコピーするか、結果のみをコピーするか、列名のみをコピーするかを選択できます。
複数結果セット
複数のクエリを実行して、複数の結果が返される場合は、結果のドロップダウン リストを選んで個々の結果を見ることができます。
クロスウェアハウス クエリ
クロスウェアハウス クエリの詳細については、「クロスウェアハウス クエリ」を参照してください。
オブジェクトを参照し、ウェアハウス間で結合する 三部構成の名前付け規則を使用して T-SQL クエリを作成できます。次に例を示します。
SELECT
emp.Employee
,SUM(Profit) AS TotalProfit
,SUM(Quantity) AS TotalQuantitySold
FROM
[SampleWarehouse].[dbo].[DimEmployee] as emp
JOIN
[WWI_Sample].[dbo].[FactSale] as sale
ON
emp.EmployeeKey = sale.SalespersonKey
WHERE
emp.IsSalesperson = 'TRUE'
GROUP BY
emp.Employee
ORDER BY
TotalProfit DESC;
キーボード ショートカット
キーボード ショートカットを使用すると、移動が簡単になり、ユーザーの SQL クエリ エディターでの作業効率を高めることができます。 この記事の表に、Microsoft Fabric ポータルの SQL クエリ エディターで使用できるすべてのショートカットの一覧を示します。
Function | [ショートカット] |
---|---|
新規 SQL クエリ | Ctrl + Q |
現在のタブを閉じる | Ctrl + Shift + F4 |
SQL スクリプトを実行する | Ctrl + Enter、Shift + Enter |
SQL スクリプトの実行の取り消し | Alt + Break |
検索文字列 | Ctrl +F |
置換文字列 | Ctrl + H |
元に戻す | Ctrl + Z |
やり直し | Ctrl + Y |
1 単語左に移動する | Ctrl + ← |
1 単語右に移動する | Ctrl + → |
インデントの増加 | タブ |
インデントの減少 | Shift + Tab |
解説 | Ctrl + K、Ctrl + C |
コメントを解除します | Ctrl + K、Ctrl + U |
カーソルを上に移動する | ↑ |
カーソルを下に移動する | ↓ |
[すべて選択] | Ctrl + A |
制限事項
SQL クエリ エディターでは、クエリを実行するたびに別のセッションが開き、実行の終了時に閉じます。 つまり、複数のクエリ実行のセッション コンテキストを設定した場合、クエリの独立した実行に対してコンテキストは維持されません。
データ定義言語 (DDL)、データ操作言語 (DML)、およびデータ制御言語 (DCL) ステートメントを実行できますが、トランザクション制御言語 (TCL) ステートメントには制限があります。 SQL クエリ エディターで [実行] ボタンを選ぶと、独立したバッチ実行要求が送信されます。 SQL クエリ エディターの各実行アクションはバッチ要求であり、セッションはバッチごとにのみ存在します。 同じクエリ ウィンドウでコードを実行するたびに、異なるバッチとセッションで実行されます。
- たとえば、トランザクション ステートメントを個別に実行する場合、セッション コンテキストは保持されません。 次のスクリーンショットでは、
BEGIN TRAN
が最初の要求で実行されましたが、2 番目の要求が別のセッションで実行されたため、コミットするトランザクションがなく、コミット/ロールバック操作が失敗します。 送信された SQL バッチにCOMMIT TRAN
が含まれていない場合、BEGIN TRAN
の後に適用された変更はコミットされません。
SQL クエリ エディターでは、
sp_set_session_context
はサポートされていません。SQL クエリ エディターでは、
GO
SQL コマンドによって、新しいセッションで新しい独立したバッチが作成されます。
- たとえば、トランザクション ステートメントを個別に実行する場合、セッション コンテキストは保持されません。 次のスクリーンショットでは、
USE を使用して SQL クエリを実行する場合は、
USE
を含む SQL クエリを 1 つの要求として送信する必要があります。現在、[結果の視覚化] では、
ORDER BY
句を使用した SQL クエリはサポートされていません。現在、[このデータを探索] または [結果の視覚化] オプションでは、T-SQL
OPTION
構文を使用する T-SQL ステートメントはサポートされていません。 回避策は、インポート モードを使用し、 Power BI Desktop で視覚化を作成することです。次の表は、想定される動作が SQL Server Management Studio または Azure Data Studio と一致しないことをまとめたものです。
シナリオ SSMS/ADS でサポートされる Fabric ポータルの SQL クエリ エディターでサポートされる SET ステートメント (Transact-SQL) を使用してセッションのプロパティを設定する はい いいえ 複数のバッチ ステートメントの実行に sp_set_session_context (Transact-SQL) を使用する はい いいえ トランザクション (Transact-SQL) (1 つのバッチ要求として実行されない限り) はい いいえ