在 SQL 编辑器中编写查询和浏览数据

Azure Databricks UI 包含一个 SQL 编辑器,可用于创作查询、浏览可用数据以及创建可视化效果。 你还可以与工作区中的其他团队成员共享已保存的查询。 本文介绍如何使用 SQL 编辑器编写、运行和管理查询。 新版本的 SQL 编辑器目前以公共预览版提供。 若要了解如何启用和使用新的 SQL 编辑器,请参阅“使用新的 SQL 编辑器与同事协作”。

SQL 编辑器 UI

打开编辑器后,可以创作 SQL 查询或浏览可用数据。 文本编辑器支持自动完成、自动格式设置和其他各种键盘快捷方式。

可以使用文本编辑器顶部的查询选项卡打开多个查询。 每个查询选项卡都有用于运行查询、将查询标记为收藏项以及连接到 SQL 仓库的控件。 还可以保存、计划或共享查询。

打开 SQL 编辑器

若要在 Azure Databricks UI 中打开 SQL 编辑器,请单击边栏中的 SQL 编辑器图标 SQL 编辑器

SQL 编辑器将打开到上次打开的查询。 如果不存在任何查询,或者所有查询都已显式关闭,则将打开一个新查询。 它会自动命名为“新查询”,并且创建时间戳将追加到标题中。

连接以计算

必须至少对正在运行的 SQL 仓库具有“可使用”权限才能运行查询。 可以使用编辑器顶部附近的下拉列表查看可用选项。 若要筛选列表,请在文本框中输入文本。

SQL 仓库选择器

首次创建查询时,可用 SQL 仓库的列表按字母顺序显示。 下次创建查询时,会选择上次使用的 SQL 仓库。

SQL 仓库旁的图标表示状态为:

  • 正在运行 Running
  • 正在启动 Starting
  • 已停止 Stopped

注意

如果列表中没有 SQL 仓库,请与工作区管理员联系。

运行查询时,选定的 SQL 仓库将自动重启。 若要了解启动 SQL 仓库的其他方法,请参阅启动 SQL 仓库

在 SQL 编辑器中浏览数据对象

如果你拥有元数据读取权限,SQL 编辑器中的架构浏览器会显示可用的数据库和表。 还可通过目录资源管理器浏览数据对象。

架构浏览器显示了示例目录、nyctaxi 数据库、行程表以及该表中的列。

可以在目录资源管理器中导航 Unity Catalog 管控的数据库对象,而无需活动计算。 若要浏览 hive_metastore 中的数据和不受 Unity Catalog 管控的其他目录,必须为计算附加相应的特权。 请参阅 Unity Catalog 数据治理

注意

如果架构浏览器或目录资源管理器中没有数据对象,请与工作区管理员联系。

单击架构浏览器顶部附近的 Refresh Schema Icon 来刷新架构。 可在搜索框中键入筛选器字符串来筛选架构。

单击表名可显示该表的列。

创建查询

可以在 SQL 编辑器中输入文本来创建查询。 可以从架构浏览器插入元素来引用目录和表。

  1. 在 SQL 编辑器中键入查询。

    SQL 编辑器支持自动补全。 键入时,自动完成功能将建议完成内容。 例如,如果光标位置的有效完成内容是列,则自动完成功能将建议一个列名称。 如果键入 select * from table_name as t where t.,则自动完成功能将识别出 ttable_name 的别名,并建议 table_name 中的列。

    自动完成别名

  2. (可选)完成编辑后,单击“保存”。 默认情况下,将查询保存到用户主文件夹,也可以选择其他位置。 然后,单击“保存”。

打开和关闭自动完成功能

实时自动完成功能可补全架构令牌、查询语法标识符(如 SELECTJOIN)和查询片段的标题。 该功能默认启用,除非你的数据库架构超过 5000 个令牌(表或列)。

使用 SQL 编辑器下方的开关关闭或打开实时自动完成功能。

  • 若要关闭实时自动完成功能,请按 Ctrl + 空格,或者单击 SQL 编辑器下方的 已启用自动补全 按钮。

保存查询

SQL 编辑器右上角附近的“保存”按钮可保存查询。

重要

修改查询但未显式单击“保存”时,该状态将保留为查询草稿。 查询草稿将保留 30 天。 30 天后,将自动删除查询草稿。 若要保留更改,必须显式保存更改。

编辑多个查询

默认情况下,SQL 编辑器使用选项卡,这让你能够同时编辑多个查询。 若要打开新选项卡,请单击 +,然后选择“创建新查询”或“打开现有查询”。 单击“打开现有查询”以查看保存的查询列表。 单击“我的查询”或“收藏夹”以筛选查询列表。 在包含要查看的查询的行中,单击“打开”。

“查询”对话框

运行一个或多个查询

若要运行一个查询或所有查询,请执行以下操作:

  1. 选择一个 SQL 仓库。

  2. 在 SQL 编辑器中突出显示查询(如果查询窗格中有多个查询)。

  3. Ctrl/Cmd + Enter 或单击“运行(1000)”,在结果窗格中以表的形式显示结果。

    查询结果

注意

默认为所有查询选择“限制为 1000”,将返回的查询数限制在 1000 行。 如果使用“限制为 1000”设置来保存查询,则此设置适用于所有查询运行(包括仪表板中的运行)。 若要为此查询返回所有行,可单击“运行(1000)”下拉列表来取消选择“限制为 1000”。 如果你想要对行数指定不同的限制,可以在查询中添加一个使用所选值的 LIMIT 子句。

终止查询

若要在执行查询时终止查询,请单击“取消”。 管理员可通过查看终止正在执行的查询来停止由其他用户启动且正在执行的查询。

查询选项

可以使用查询编辑器顶部附近的 Kebab 菜单 kebab 上下文菜单访问菜单选项,以克隆、还原、编辑查询信息和设置其格式。

还原到已保存的查询

编辑查询时,用于查询的上下文菜单中会显示“还原更改”选项。 单击“还原”可以返回到已保存的版本。

放弃和还原查询

若要将查询移入回收站,请执行以下操作:

  • 在 SQL 编辑器中单击查询旁边的 kebab 上下文菜单 Kebab 菜单,然后选择“移入回收站”。
  • 单击“移入回收站”以确认。

若要从回收站还原查询,请执行以下操作:

  1. 在“所有查询”列表中,单击 回收站
  2. 单击查询。
  3. 单击 SQL 编辑器右上方的 kebab 上下文菜单 Kebab 菜单,然后单击“还原”。

设置查询说明和查看查询信息

若要设置查询说明,请执行以下操作:

  1. 单击查询旁边的 kebab 上下文菜单 Kebab 菜单,然后单击“编辑查询信息”。

    上下文菜单

  2. 在“说明”文本框中,输入说明。 然后,单击“保存”。 还可在此对话框中查看查询的历史记录,包括创建和更新时间。

收藏和标记查询

可使用收藏夹和标记来筛选在工作区登陆页面以及仪表板和查询的每个列表页面中显示的查询和仪表板的列表。

收藏夹:若要将查询放入收藏夹,请在查询列表中单击其标题左侧的星号。 星号将变为黄色。

标记:可使用对组织有意义的任何字符串标记查询和仪表板。

添加标记

在查询编辑器中添加标记。

  1. 单击查询旁边的 kebab 上下文菜单 Kebab 菜单,然后单击“编辑查询信息”。 这会显示“查询信息”对话框。

  2. 如果查询未应用标记,将显示标记的文本框中会出现“添加一些标记”。 若要创建新标记,请在框中键入它。 若要输入多个标记,请在条目之间按 Tab。

    添加标记

  3. 单击“保存”以应用标记并关闭对话框。

删除标记

  1. 单击查询旁边的 kebab 上下文菜单 Kebab 菜单,然后单击“编辑查询信息”。
  2. 单击要删除的任何标记上的 X。
  3. 单击“保存”以关闭该对话框。

查看查询结果

查询运行后,结果将显示在其下方的窗格中。 对于新查询,会打开新结果表。 如有必要,请单击下拉列表将其关闭。 该部分中的图像使用新的结果表。

可使用结果窗格浏览查询结果并与之交互。 结果窗格包括下列用于浏览结果的功能:

可视化效果、筛选器和参数

单击 加号图标 以添加可视化效果、筛选器或参数。 将显示以下选项:

显示了可用选项。

可视化效果:可视化效果可以帮助浏览结果集。 如需可用可视化效果类型的完整列表,请参阅可视化效果类型

筛选器:通过筛选器可以在查询运行后限制结果集。 可应用筛选器来选择性地显示数据的不同子集。 若要了解如何使用筛选器,请参阅查询筛选器

参数:有了参数,可通过在运行时将值替换到查询中来限制结果集。 要了解如何应用参数,请参阅使用查询参数

编辑、下载或添加到仪表板

重要

  • Databricks 建议使用 AI/BI 仪表板(以前称为 Lakeview 仪表板)。 早期版本的仪表板,以前称为 Databricks SQL 仪表板,现在称为旧仪表板。 Databricks 不建议创建新的旧版仪表板。
  • 使用迁移工具或 REST API 转换旧版仪表板。 有关使用内置迁移工具的说明,请参阅将旧版仪表板克隆到 AI/BI 仪表板。 有关使用 REST API 创建和管理仪表板的教程,请参阅仪表板教程

单击一个“结果”选项卡中的 向下箭头图标 以查看更多选项。

用于自定义、下载结果和添加到仪表板的选项。

  1. 单击“编辑”以自定义可视化效果中显示的结果
  2. 单击“删除”以删除“结果”选项卡
  3. 单击“复制”以克隆“结果”选项卡
  4. 单击“添加到仪表板”,将查询和可视化效果复制到新仪表板
    • 此操作会创建一个新仪表板,其中包含与查询关联的所有可视化效果。 请参阅仪表板,了解如何编辑仪表板。
    • 系统会提示你选择新仪表板的名称。 新仪表板将保存到主文件夹。
    • 不能将结果添加到现有仪表板。
  5. 单击“添加到旧版仪表板”,将“结果”选项卡添加到新的或现有的旧版仪表板
  6. 单击任一下载选项以下载结果。 有关详细信息和限制,请参阅以下说明。

下载结果:可以将结果下载为 CSV、TSV 或 Excel 文件。

可以从 Databricks SQL 中以 CSV 和 TSV 格式下载最多约 1 GB 的结果数据,并将最多 100,000 行数据下载到 Excel 文件中。

最终文件下载大小可能略大于或小于 1 GB,因为 1 GB 限制应用于最终文件下载之前的步骤。

注意

如果无法下载查询,则表示工作区管理员已为工作区禁用了下载功能。

过去的执行

可查看查询的历史运行(包括完整的查询语法)。 历史执行在只读模式下打开,并有按钮用来克隆到新查询或恢复编辑。 此选项卡不会显示计划的运行

每次运行查询时该记录都会显示,包括特定的查询语法。

浏览结果

返回的查询结果显示在查询下方。 “原始结果”选项卡会填充返回的行。 可以使用内置筛选器通过升序或降序值对结果进行重新排序。 还可使用筛选器搜索包含特定值的结果行。

使用搜索筛选结果

可以使用结果窗格中的选项卡添加可视化效果、筛选器和参数。

数据的散点图可视化效果,带有用于创建新的可视化效果、筛选器或参数的选项。

在查询窗口中筛选已保存的查询列表

在查询窗口中,可以按创建的查询列表(“我的查询”)、收藏夹和标记来筛选所有查询的列表。

自动更新

可使用“计划”按钮设置查询运行的自动节奏。 自动更新有助于使仪表板和报表与最新的数据保持一致。 计划的查询还可启用 Databricks SQL 警报,这是一种特定类型的计划任务,在值达到指定阈值时发送通知。

请参阅计划查询

请参阅什么是 Databricks SQL 警报?

共享查询

通过“共享”按钮,可以与工作区中的其他用户共享查询。 进行共享时,请在以下选项之间进行选择:

  • 以所有者身份运行(所有者凭据):此设置意味着观看者能够像查询所有者一样,看到相同的查询结果。 这适用于计划或手动查询运行。
  • 以观看者身份运行(观看者凭据):此设置将结果限制为观看者分配的权限。

请参阅配置查询权限

下一步

若要了解如何使用 Azure Databricks UI 处理查询,请参阅访问和管理保存的查询