SQL 控制台
SQL 控制台是您在 ClickHouse Cloud 中探索和查询数据库的最快和最简单的方法。您可以使用 SQL 控制台来:
- 连接到您的 ClickHouse Cloud 服务
- 查看、过滤和排序表数据
- 执行查询并在几次点击中可视化结果数据
- 与团队成员共享查询,并更有效地协作。
探索表
查看表列表和架构信息
您 ClickHouse 实例中包含的表概述可以在左侧边栏区域找到。使用左侧栏顶部的数据库选择器查看特定数据库中的表。

列表中的表也可以展开以查看列和类型。

探索表数据
点击列表中的一个表以在新标签页中打开它。在表视图中,可以轻松查看、选择和复制数据。请注意,在将数据复制粘贴到 Microsoft Excel 和 Google 表格等电子表格应用程序时,结构和格式将得到保留。您可以使用页脚的导航在每 30 行的分页中翻转表数据的页面。

检查单元格数据
单元格检查器工具可用于查看单个单元格中包含的大量数据。要打开它,请右键单击一个单元格并选择“检查单元格”。点击检查器内容右上角的复制图标可以复制单元格检查器的内容。

过滤和排序表
排序表
要在 SQL 控制台中排序表,请打开一个表并选择工具栏中的“排序”按钮。此按钮将打开一个菜单,允许您配置排序。您可以选择一个列作为排序依据并配置排序顺序(升序或降序)。选择“应用”或按回车以对表进行排序。

SQL 控制台还允许您向表中添加多个排序。再次点击“排序”按钮以添加另一项排序。注意:排序将按照它们在排序面板中的出现顺序(从上到下)应用。要移除一个排序,只需点击该排序旁边的“x”按钮。
过滤表
要在 SQL 控制台中过滤表,请打开一个表并选择“过滤”按钮。与排序相似,此按钮将打开一个菜单,允许您配置过滤条件。您可以选择一个列作为过滤依据并选择必要的条件。SQL 控制台智能地显示与列中包含的数据类型相对应的过滤选项。

当您对过滤条件满意时,可以选择“应用”以过滤数据。您还可以添加更多过滤条件,如下所示。

与排序功能类似,点击过滤器旁边的“x”按钮以移除它。
一起过滤和排序
SQL 控制台允许您同时过滤和排序表。为此,使用上述步骤添加所有所需的过滤器和排序,然后点击“应用”按钮。

从过滤器和排序创建查询
SQL 控制台可以直接将您的排序和过滤转换为查询,只需一击。只需选择工具栏中的“创建查询”按钮,并配置您选择的排序和过滤参数。点击“创建查询”后,将打开一个新的查询标签,预填充对应于您表视图中数据的 SQL 命令。

在使用“创建查询”功能时,过滤器和排序不是强制性的。
您可以通过阅读 (链接) 查询文档来了解有关 SQL 控制台中查询的更多信息。
创建和运行查询
创建查询
在 SQL 控制台中,有两种方法可以创建新查询。
- 点击标签栏中的“+”按钮
- 从左侧边栏查询列表中选择“新建查询”按钮

运行查询
要运行查询,请在 SQL 编辑器中输入您的 SQL 命令,并点击“运行”按钮或使用快捷键 cmd / ctrl + enter
。要依次编写和运行多个命令,请确保在每个命令后添加分号。
查询执行选项 默认情况下,点击运行按钮将运行 SQL 编辑器中包含的所有命令。SQL 控制台支持两种其他查询执行选项:
- 运行选定的命令
- 在光标处运行命令
要运行选定的命令,请突出显示所需的命令或命令序列,单击“运行”按钮(或使用 cmd / ctrl + enter
快捷键)。当存在选择时,您还可以从 SQL 编辑器上下文菜单中选择“运行选定”。

要在当前光标位置运行命令,可以通过以下两种方式实现:
- 从扩展运行选项菜单中选择“在光标处运行”(或使用相应的
cmd / ctrl + shift + enter
快捷键)

- 从 SQL 编辑器上下文菜单中选择“在光标处运行”

光标位置上的命令将在执行时会闪烁黄色。
取消查询
在查询运行时,查询编辑器工具栏中的“运行”按钮将替换为“取消”按钮。只需点击此按钮或按 Esc
以取消查询。注意:已返回的任何结果在取消后仍将保留。

保存查询
如果没有为您的查询命名,它应该被称为“未命名查询”。点击查询名称以更改它。重命名查询将导致查询被保存。

您还可以使用保存按钮或 cmd / ctrl + s
键盘快捷键来保存查询。

使用 GenAI 管理查询
此功能允许用户将查询编写为自然语言问题,并让查询控制台根据可用表的上下文创建 SQL 查询。GenAI 还可以帮助用户调试查询。
有关 GenAI 的更多信息,请查看 ClickHouse Cloud 博客文章中的 GenAI 驱动的查询建议。
表设置
让我们导入英国价格支付示例数据集,并使用它创建一些 GenAI 查询。
-
打开一个 ClickHouse Cloud 服务。
-
通过点击 + 图标创建一个新查询。
-
粘贴并运行以下代码:
此查询应该花费大约 1 秒完成。完成后,您应该有一个名为
uk_price_paid
的空表。 -
创建一个新查询并粘贴以下查询:
此查询从 gov.uk
网站提取数据集。该文件大小约为 4GB,因此该查询将需要几分钟才能完成。完成后,ClickHouse 应该在 uk_price_paid
表中包含整个数据集。
查询创建
让我们使用自然语言创建一个查询。
-
选择 uk_price_paid 表,然后点击 创建查询。
-
点击 生成 SQL。您可能会被要求接受您的查询发送给 Chat-GPT。您必须选择 我同意 以继续。
-
现在,您可以使用此提示输入自然语言查询,并让 ChatGPT 将其转换为 SQL 查询。在此示例中,我们将输入:
显示按年统计的所有 uk_price_paid 交易的总价格和交易总数。
-
控制台将生成我们需要的查询并在新标签中显示。在我们的示例中,GenAI 创建了以下查询:
-
一旦您确认查询是正确的,点击 运行 以执行它。
调试
现在,让我们测试 GenAI 的查询调试能力。
-
通过点击 + 图标创建一个新查询,并粘贴以下代码:
-
点击 运行。由于我们尝试获取
pricee
的值,而不是price
,所以查询失败。 -
点击 修复查询。
-
GenAI 将尝试修复查询。在这种情况下,它将
pricee
更改为price
。它还意识到在这种情况下使用toYear
是更好的函数。 -
选择 应用 以将建议的更改添加到您的查询并点击 运行。
请记住,GenAI 是一个实验性功能。在针对任何数据集运行 GenAI 生成的查询时请谨慎。
高级查询功能
搜索查询结果
在查询执行后,您可以使用结果面板中的搜索输入快速搜索返回的结果集。此功能有助于预览附加 WHERE
子句的结果,或简单地检查特定数据是否包含在结果集中。在搜索输入中输入值后,结果面板将更新并返回包含匹配输入值的记录。在此示例中,我们将查找 hackernews
表中所有包含 ClickHouse
(不区分大小写)的 breakfast
的实例:

注意:任何匹配输入值的字段都将被返回。例如,上述截图中的第三条记录在 by
字段中不匹配‘breakfast’,但在 text
字段中则匹配:

调整分页设置
默认情况下,查询结果面板将显示所有结果记录在单个页面中。对于较大的结果集,分页结果以便于查看可能更为可取。这可以使用结果面板右下角的分页选择器完成:

选择页面大小将立即应用分页到结果集,并在结果面板页脚中部出现导航选项。

导出查询结果数据
查询结果集可以直接从 SQL 控制台轻松导出为 CSV 格式。为此,请打开结果面板工具栏右侧的 •••
菜单并选择“下载为 CSV”。

可视化查询数据
某些数据在图表形式中更易于解释。您可以在 SQL 控制台中仅需几次点击即快速创建查询结果数据的可视化。例如,使用一个计算 NYC 出租车行程每周统计数据的查询:

没有可视化,这些结果很难解释。让我们将其转化为图表。
创建图表
要开始构建您的可视化,请从查询结果面板工具栏中选择“图表”选项。图表配置面板将出现:

我们将开始创建一个简单的柱状图,以 week
为 trip_total
的跟踪。为此,我们将将 week
字段拖动到 x 轴,将 trip_total
字段拖动到 y 轴:

大多数图表类型支持多个字段在数值轴上。为了演示,我们将把 fare_total
字段拖到 y 轴:

自定义图表
SQL 控制台支持十种图表类型,可以从图表配置面板中的图表类型选择器选择。例如,我们可以轻松将先前的图表类型从柱状图更改为区域图:

图表标题与提供数据的查询名称相匹配。更新查询的名称将导致图表标题更新:

在图表配置面板的“高级”部分,许多更高级的图表特性也可以进行调整。首先,我们将调整以下设置:
- 副标题
- 轴标题
- x 轴标签方向
我们的图表将相应更新:

在某些情况下,可能需要独立调整每个字段的轴刻度。这也可以通过指定轴范围的最小值和最大值来完成。例如,上述图表看起来不错,但为了展示 trip_total
和 fare_total
字段之间的相关性,轴范围需要一些调整:
