查询构建器
Metabase包含一个图形化查询构建器,让您能够构建交互式图表。
通过查询构建器,您可以:
查看图表时,您还可以点击问题来更详细地探索数据。
钻取菜单会根据您点击的内容显示不同的选项。然后,您可以选择将任何探索保存为新问题。完整的钻取菜单仅适用于使用查询构建器构建的问题。使用SQL/原生编辑器构建的问题将只有有限的钻取操作。有关钻取工作原理的更多信息,请查看创建交互式图表。
使用查询构建器创建新问题
在 + 新建下拉菜单中,选择问题,然后选择您的起始数据
您可以从以下位置开始一个问题:
- 一个模型。一个模型是一种特殊类型的已保存问题,旨在作为一个好的问题起点。有时这些被称为派生表,因为它们通常从多个原始表中汇总数据。
- 一个指标。指标是预定义的计算。如果您选择一个指标作为问题的起点,Metabase将创建一个与所选指标具有相同数据源的问题,并应用该指标。您将能够添加更多的连接、筛选和汇总。
- 表。您需要指定数据库和该数据库中的表作为您问题的起点。
- 一个已保存的问题。您可以使用任何问题的结果作为新问题的起点。
请注意,有些类型的已保存问题不能用作源数据:
- Druid 问题
- Mongo 问题
- 使用
累计求和
或累计计数
聚合的问题 - 具有相同或相似名称列的问题,例如
Count
和Count 2
编辑器
一旦您选择了数据,Metabase 将带您进入查询构建器的编辑器。假设您选择了 表 > 示例数据库 > 订单,那么您会看到类似这样的界面:
这是查询构建器的编辑器。它有三个默认步骤。
在每个已完成步骤的右侧,有一个预览按钮(看起来像一个播放按钮 - 一个指向右侧的三角形),它会向您显示到该步骤为止问题结果的前 10 行。
选择数据
数据部分是您选择要使用的数据的地方。在这里,您可以选择一个模型、一个指标、一个数据库中的表,或者一个已保存的问题。
您可以通过按住 Cmd/Ctrl 并点击查询构建器中的数据源名称,在新的浏览器标签页中查看数据源。
要选择在查询中包含哪些列,请单击数据源旁边的箭头。如果您取消选中某一列,您仍然可以在构建查询时使用该列(例如,在筛选器中),但 Metabase 不会在结果中显示该列。
您可以从表格视图中隐藏列。
隐藏列不应被用于保护敏感信息。在表格可视化设置中隐藏列只会影响列在可视化中的可见性,而不会影响查询结果。即使只有对问题有“查看数据”权限的人员也能够更改可视化设置并取消隐藏列。要从特定查询的结果中排除一列,请在查询构建器的“数据”块中取消选中该列。
连接数据
您还可以通过连接来选择同一数据库中的多个表。
筛选数据
参见筛选器。
可视化您的数据
查看可视化结果。
列标题钻取
在查看表格时,单击列标题会根据列的数据类型提供不同的选项。请参阅表格。
自定义表达式
自定义表达式允许您在聚合函数内部或之间使用类似电子表格的函数和简单的算术运算。
例如,您可以执行 Average(sqrt[FieldX]) + Sum([FieldY])
或 Max(floor([FieldX] - [FieldY]))
,其中 FieldX
和 FieldY
是当前所选表中的字段。了解更多关于编写表达式的信息。
自定义列
当您需要根据计算创建一个新列时,自定义列非常有用,例如从一个列的值中减去另一个列的值,或者提取现有文本列的一部分。您添加的自定义列不会永久添加到基础数据库表中;这些列只会出现在给定的问题中。
您可以在公式中使用以下数学运算符:+
、–
、*
(乘法)和 /
(除法),以及一系列类似电子表格的函数。您还可以使用括号来明确运算顺序。请参阅表达式列表。
排序结果
排序步骤让您可以选择一个或多个列来对结果进行排序。对于您选择的每个列,您还可以选择升序或降序排序;只需点击箭头即可从升序(向上箭头)更改为降序(向下箭头)。
设置行数限制
行数限制步骤可让您限制从先前结果中获取的行数。与排序结合使用时,限制可以帮助您创建前 10 名列表等内容,方法是首先按结果中的某一列排序,然后添加 10 的行数限制。与其他步骤不同,行数限制步骤只能在问题的末尾添加。如果您确实希望在有限的结果上添加更多步骤,您可以随时将有限的结果保存为问题,然后基于这些结果开始一个新问题。
查看驱动您问题的原生查询
在底层,所有 Metabase 问题都会被转换为 SQL 或您的查询引擎支持的其他原生语言。要查看 Metabase 在您点击可视化时将运行的原生查询,请点击查询构建器右上角的查看 SQL 或查看查询按钮。Metabase 将在侧边栏中预览原生查询。
要查看原生查询,您必须具有查询构建器和原生权限。
将查询构建器问题转换为 SQL
您还可以将问题转换为原生编辑器问题。在查询构建器屏幕中:
- 点击查询构建器右上角的控制台图标。
- 点击SQL代码下方右下角的将问题转换为SQL选项。
转换是单向的:您无法将SQL问题转换回查询构建器问题。
阅读其他版本的 Metabase 的文档。