故障排除过滤器

始终从快速检查开始是一个好主意

  1. 清除您的浏览器缓存。
  2. 刷新页面。
  3. 在隐身窗口中打开您的问题或仪表板。

仪表盘过滤器

如果仪表板筛选器没有给出结果或结果错误

  1. 单击 铅笔 图标进入编辑模式。
  2. 单击您的筛选器小部件旁边的 齿轮 图标。
  3. 请确保您已在 筛选列 下选择了一个列。
  4. 如果您找不到正确的 筛选列,或者应用筛选器时得到“无结果”
    • 退出编辑模式并单击仪表板卡片以转到 原始问题
    • 按照问题过滤器下的故障排除步骤进行操作。

问题过滤器

如果问题过滤器没有结果或结果错误

  1. 确保问题包含您想要过滤的列。
  2. 检查该列是否实际上包含您正在过滤的值。您可以通过以下方式完成此操作:
    • 对数字或日期列进行排序,
    • 为字符串列创建“包含”过滤器,或
    • 咨询您的数据库管理员。
  3. 请您的Metabase管理员帮助您检查

特殊情况

如果您在过滤时遇到问题

说明

当我们首次设置过滤器时,我们需要将过滤器链接到一个列。如果我们对列的值或数据类型做出了错误的假设,则过滤器根本不起作用。如果列在数据库端发生变化,则过滤器可能会突然停止工作。

例如,假设我们想要创建一个名为“选择产品ID”的过滤器,并将其链接到名为产品ID的列。如果以下任何情况发生,则过滤器将不起作用:

  • 我们的问题未包含产品ID列。
  • 我们在“选择产品ID”过滤器中输入数字4,而产品ID列只包含1、2和3的值。
  • 产品ID在数据库或表元数据页面中被重命名。
  • 产品ID从数据库中删除或在表元数据页面中隐藏。
  • 产品ID是一个未按预期工作的自定义列。
  • 我们没有访问产品ID列的数据权限。
  • 我们将“选择产品ID”设置为数值过滤器,但产品ID是字符串列(请参阅下面的部分)。

时间、ID和数字过滤器

调试涉及时间戳、UUID或数字数据的仪表板和问题过滤器

  1. 找到您想要过滤的列的数据类型。您可以从以下内容中找到此信息:
  2. 将列转换为与所需过滤器类型匹配的数据类型。您可以通过以下方式完成此操作:

如果您不是Metabase管理员,您可能需要要求管理员帮助您完成这些步骤中的一些。

说明

Metabase需要知道列的数据类型,以便为您呈现经过筛选的过滤器类型。有时这些列可能被误输入——如果一个列存储数字作为字符串,Metabase将只显示文本或类别过滤器(例如“是”,“不是”)而不是数字过滤器(例如“大于”,“小于”)。

特别是时间戳是万恶之源,所以当您尝试正确设置数据类型时,请对Metabase管理员(或自己!)保持耐心。

BigQuery和Oracle中的字段过滤器

如果您在BigQuery或Oracle中使用字段过滤器时遇到错误,请确保您使用了FROM子句的正确语法。请参阅BigQuery和Oracle中的字段过滤器

缺失或错误的过滤器值

如果您的过滤器下拉菜单显示某一列的错误值

  1. 转到 管理员设置 > 表元数据
  2. 找到您的数据库、表和列。
  3. 单击列设置框右侧的 齿轮 图标。
  4. 滚动到 缓存的字段值
  5. 可选:单击 丢弃缓存的字段值
  6. 单击 重新扫描此字段

说明

Metabase通过查询和缓存表的前1,000个不同的记录来获取过滤器下拉菜单的值。如果您的表更新频率比您的扫描计划更频繁,您可能会看到过时的过滤器值。

您还卡住了吗?

如果您无法使用故障排除指南解决问题

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

想改进这些文档? 提出更改。