筛选条件问题排查
始终建议先进行快速的健全性检查
- 清除浏览器缓存。
- 刷新页面。
- 在隐身窗口中打开您的问题或仪表板。
仪表板筛选条件
如果仪表板筛选条件未提供任何结果或结果不正确
- 单击铅笔图标以进入编辑模式。
- 单击筛选条件小组件旁边的齿轮图标。
- 确保您已在要筛选的列下为筛选条件选择了一列。
- 如果您找不到正确的要筛选的列,或者在应用筛选条件时收到“无结果”
- 退出编辑模式,然后单击仪表板卡片以转到原始问题。
- 按照问题筛选条件下的问题排查步骤操作。
问题筛选条件
如果问题筛选条件未提供任何结果或结果不正确
- 确保问题包含您要筛选的列。
- 检查该列是否实际包含您要筛选的值。您可以通过以下方式执行此操作
- 对数字或日期列进行排序,
- 为字符串列创建“包含”筛选条件,或者
- 咨询您的数据库管理员。
- 请您的 Metabase 管理员帮助您检查
特殊情况
如果您在筛选
- 自定义列时遇到问题:检查自定义表达式是否按预期工作。例如,当您期望数字时,您的自定义表达式可能返回空白值。
- SQL 字段筛选条件:确保您使用了正确的字段筛选条件语法,然后参阅SQL 变量问题排查。
说明
当我们首次设置筛选条件时,我们需要将筛选条件链接到一列。如果我们对列的值或数据类型做出错误的假设,则筛选条件将根本不起作用。如果数据库端的列发生更改,则筛选条件可能会突然停止工作。
例如,假设我们要创建一个名为“选择产品 ID”的筛选条件,该筛选条件链接到名为“产品 ID”的列。如果发生以下任何一种情况,筛选条件将不起作用
- 我们的问题不包含“产品 ID”列。
- 当“产品 ID”列仅包含值 1、2 和 3 时,我们在“选择产品 ID”筛选条件中键入数字 4。
- “产品 ID”在数据库或“表元数据”页面中被重命名为其他名称。
- “产品 ID”从数据库中删除,或在“表元数据”页面中隐藏。
- “产品 ID”是未按预期工作的自定义列。
- 我们没有访问“产品 ID”列的数据权限。
- 我们将“选择产品 ID”设置为数值筛选条件,但“产品 ID”是字符串列(请参阅下面的部分)。
时间、ID 和数字筛选条件
要调试涉及时间戳、UUID 或数值数据的仪表板和问题筛选条件
- 查找您要筛选的列的数据类型。您可以从以下位置找到此信息
- 将列强制转换为与所需筛选条件类型匹配的数据类型。您可以
- 从“表元数据”页面将字符串或数字强制转换为日期,或者
- 更改数据库中列的数据类型,并重新同步数据库架构。
如果您不是 Metabase 管理员,则可能需要请管理员帮助您完成其中一些步骤。
说明
Metabase 需要知道列的数据类型,以便为您提供精选的筛选条件类型选择。有时这些列的类型会被错误地输入 — 如果列将您的数字存储为字符串,则 Metabase 将仅向您显示文本或类别筛选条件(选项如“是”、“不是”),而不是数字筛选条件(选项如“大于”、“小于”)。
特别是时间戳是万恶之源,因此在尝试使数据类型正确时,请对您的 Metabase 管理员(或您自己!)保持耐心。
BigQuery 和 Oracle 中的字段筛选条件
如果您在使用 BigQuery 或 Oracle 的字段筛选条件时遇到错误,请确保您使用了 FROM
子句的正确语法。请参阅BigQuery 和 Oracle 中的字段筛选条件。
缺少或不正确的筛选条件值
如果您的筛选条件下拉菜单为列显示了错误的值
- 转到管理设置 > 表元数据。
- 找到您的数据库、表和列。
- 单击列的设置框右侧的齿轮图标。
- 滚动到已缓存的字段值。
- 可选:单击丢弃已缓存的字段值。
- 单击重新扫描此字段。
说明
Metabase 扫描通过查询和缓存表中的前 1,000 条不同记录来获取筛选条件下拉菜单的值。如果您的表更新频率高于扫描计划,您可能会看到过时的筛选条件值。
相关主题
您仍然遇到问题吗?
如果您无法使用问题排查指南解决您的问题
- 搜索或咨询 Metabase 社区。
- 搜索已知错误或限制。
阅读其他Metabase 版本的文档。