联动筛选器

您可以链接仪表板上的筛选器,以便子筛选器根据父筛选器应用的值来限制其值。

例如,假设您希望一个用于州列的筛选器来限制用于城市列的筛选器的可用值,这样如果有人选择了一个州,他们将只能选择该州的城市。为此,您可以将城市筛选器(子)链接到(父)州筛选器。

Linked filters

设置链接筛选器的表

您只能链接仪表板上的那些筛选器,这些筛选器已连接到仪表板卡上的数据库列(而不是自定义列或摘要),因为 Metabase 需要列元数据来创建链接筛选器。Metabase 需要知道列中有哪些值,以及父列和子列之间如何相互关联。

只有当筛选器连接到在表元数据中明确指定了关系的列时,才能链接筛选器。这里说的关系是指列应该

  • 在同一个表中。
  • 在已在表元数据中指定了外键关系的两个不同表中。
  • 在已在表元数据中指定了外键关系到一个或多个中间表关系的两个不同表中。

Setting up foreign key in table metadata

如果您尝试在两个未连接的列之间设置链接筛选器,Metabase 不会显示错误,但您会发现子筛选器中的值不受父筛选器的限制。有关更多故障排除技巧,请参阅故障排除链接筛选器

设置链接筛选器

您可以将子筛选器链接到一个或多个父筛选器。子筛选器必须是 ID、位置、文本或类别筛选器。父筛选器可以是任何筛选器类型

将仪表板上的子筛选器链接到一个或多个父筛选器

  1. 通过单击仪表板右上角的铅笔图标来编辑仪表板。
  2. 通过单击筛选器中的齿轮图标来编辑子筛选器。
  3. 在筛选器设置侧边栏中,切换到链接筛选器选项卡。
  4. 选择父筛选器。

Linked filters

您在链接筛选器选项卡中选择的筛选器将成为父筛选器,即限制您当前正在编辑的(子)筛选器值的筛选器。

链接筛选器的限制

链接筛选器忽略由模型和问题定义的关​​系

链接筛选器仅“了解”表元数据中定义的关​​系。此限制允许人们将筛选器连接到多个仪表板卡(跨多个选项卡)上的同一列,但此限制也意味着

  • 链接筛选器看不到模型或问题中由 JOIN 定义的关​​系。
  • 链接筛选器无法使用任何基础卡片或模型中的任何筛选器或 JOIN 逻辑。

例如,假设您有一个包含州和城市列的表,并且您构建了一个过滤掉City = San Francisco的行的模型。您基于该模型提问,并将其添加到仪表板。您将州和城市筛选器添加到仪表板,并将它们链接起来。如果您选择State = CA,则城市筛选器仍可能显示San Francisco作为选项,尽管问题和基础模型中没有San Francisco的记录,因为筛选器只“知道”基础表元数据(包括该列的示例值)。

链接筛选器不适用于自定义列或摘要

Metabase 使用数据库列元数据来填充链接筛选器的值,这意味着链接筛选器必须连接到数据库列。具体来说

  • 您无法在自定义列上创建链接筛选器。

  • 原生/SQL 问题必须有一个字段筛选器变量才能进行链接。基本的 SQL 变量未连接到数据库列,因此它们不适用于链接筛选器。

  • 您无法链接使用“自定义列表”或“来自另一个模型或问题”作为其值来源的筛选器。

故障排除链接筛选器

如果您没有看到预期的链接筛选器行为,请确保您的表关系已设置为支持链接筛选器。有关更多故障排除信息,请参阅故障排除链接筛选器

阅读其他版本的 Metabase 的文档。

这有帮助吗?

感谢您的反馈!
想改进这些文档吗?提议更改。
© . This site is unofficial and not affiliated with Metabase, Inc.