使用 SQL 查询编辑器进行查询
适用于:✅Microsoft Fabric 中的 SQL 分析终结点、仓库和镜像数据库
本文介绍如何使用 Microsoft Fabric 门户中的 SQL 查询编辑器快速高效地编写查询,以及如何最好地查看所需信息的建议。
- 还可以使用多个工具通过 SQL 连接字符串查询仓库中的数据。
- 可以使用可视化查询编辑器以图形方式生成查询。
- 可以在数据预览中快速查看数据。
SQL 查询编辑器支持 IntelliSense、代码完成、语法突出显示、客户端分析和验证。 可以运行数据定义语言 (DDL)、数据操作语言 (DML) 和数据控制语言 (DCL) 语句。
Fabric 门户中的 SQL 查询编辑器
SQL 查询编辑器提供了一个文本编辑器,用于使用 T-SQL 编写查询。 若要访问内置的 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 文件:
选择“继续”按钮后,在 Windows 文件资源管理器中(例如,在浏览器的“下载”文件夹中)找到下载的 Excel 文件。
要查看数据,请选择“受保护视图”功能区中的“启用编辑”按钮,然后选择“安全警告”功能区中的“启用内容”按钮。 启用两者后,将会显示以下对话框,以批准运行列出的查询。
选择运行。
成功登录后,你将看到电子表格中显示的数据。
浏览此数据(预览版)
“探索此数据(预览版)”提供对查询结果执行临时探索的功能。 借助此功能,可以启动并排矩阵和视觉视图,以便用户首先更好地了解查询结果背后的任何趋势或模式,然后再进一步生成完整的 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 |
左移一个字 | Ctrl + 向左键 |
右移一个字 | Ctrl + 向右键 |
缩进增加 | Tab |
缩进减少 | Shift + Tab |
评论 | Ctrl+K、Ctrl+C |
取消注释 | Ctrl+K、Ctrl+U |
上移光标 | ↑ |
下移光标 | ↓ |
全选 | Ctrl+A |
限制
在 SQL 查询编辑器中,每次运行查询时,它都会打开一个单独的会话,并在执行结束时关闭它。 这意味着,如果为多个查询运行设置会话上下文,则不会为查询的独立执行维护上下文。
可以运行数据定义语言 (DDL)、数据操作语言 (DML)、和数据控制语言 (DCL) 语句,但事务控制语言 (TCL) 语句存在限制。 在 SQL 查询编辑器中,选择“运行”按钮后,将会提交要执行的独立批处理请求。 SQL 查询编辑器中的每个“运行”操作都是一个批处理请求,每个批处理仅存在一个会话。 同一查询窗口中每次执行代码时,将会在不同的批处理和会话中运行。
- 例如,独立执行事务语句时,不会保留会话上下文。 在以下屏幕截图中,
BEGIN TRAN
在第一个请求中执行,但由于第二个请求在不同的会话中执行,因此没有要提交的事务,从而导致提交/回滚操作失败。 如果提交的 SQL 批处理不包含COMMIT TRAN
,则BEGIN TRAN
之后应用的更改将不会提交。
SQL 查询编辑器不支持
sp_set_session_context
。在 SQL 查询编辑器中,
GO
SQL 命令会在新会话中创建一个新的独立批处理。
- 例如,独立执行事务语句时,不会保留会话上下文。 在以下屏幕截图中,
使用 USE 运行 SQL 查询时,需要将 SQL 查询和
USE
作为单个请求提交。可视化结果目前不支持使用
ORDER BY
子句的 SQL 查询。采用 DirectQuery 模式的“浏览此数据”或“可视化结果”选项目前不支持使用 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)(除非作为单个批处理请求执行) 是 否