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