表元数据管理设置

Metabase 允许您向表和列添加和编辑元数据,以便您可以管理组织不断变化的业务逻辑。转到管理设置中的表元数据选项卡以

表元数据管理设置仅影响 Metabase 中数据的显示和解释方式。所有设置都不会更改您数据库中的数据。

表设置

点击左侧边栏中的表名称,即可查看 Metabase 中该表的设置。

如果您连接了多个数据库到 Metabase,请点击数据库名称(例如,“示例数据库”),然后从下拉菜单中选择另一个数据库。选择数据库后,该数据库中的表将显示在侧边栏中。

Table metadata

表显示名称

要编辑 Metabase 中表的显示名称,请点击包含当前表名称的框。点击框外后,更改将自动保存。

表描述

要添加表描述,请点击表名称下方的框。描述将显示在 Metabase 的数据参考中,以帮助人们找到适合其用例的表。

表可见性

可查询的表在 Metabase 中随处可见。

隐藏的表将不会显示在查询构建器数据参考中。但这并非安全功能:如果有人从SQL 编辑器编写SELECT * FROM hidden_table,隐藏表仍可用于 SQL 查询。要阻止人们对特定表编写查询,请参阅数据权限

提示:要隐藏数据库中的所有表(例如,如果您已迁移到新数据库),请点击左侧边栏中“# 可查询表”旁边的隐藏眼睛图标。

原始模式

要提醒自己数据库中存储的列名和数据类型,请点击原始模式(在可见性下方)。

Original schema

列(字段)设置

选择一个数据库,然后点击侧边栏中的表名,即可显示基本列显示设置。

如需更多列设置,请点击列设置框右侧的齿轮图标

Column settings

列名

要更改 Metabase 中列的全局显示名称,请点击列名。例如,您可以将“auth.user”显示为“用户”,以使列更具可读性。人们可以使用模型为列提供特定于模型的显示名称。

列描述

要添加描述,请点击列名下方的框。描述显示在数据参考中,以帮助人们解释列的值。如果您的列包含以下内容,您应考虑添加描述:

  • 缩写或代码
  • 零、空值或空白值
  • 占位符值,例如9999-99-99

列可见性

随处可见:默认情况下,用户可以看到表中所有列。

仅在详情视图中:这将隐藏问题结果中的冗长文本。如果列值的平均长度超过 50 个字符,此设置将默认应用。例如,如果您已经有一个“客户评分”列,则可以在“客户评论”之类的列上使用此设置。

不包含的列将不会显示在查询构建器或数据参考中。您可以在敏感列(例如 PII)或不相关列上设置“不包含”。但此可见性选项是一个简单的省略/隐藏选项;它不是安全功能。具有原生查询权限的人仍然可以访问这些列;他们可以在SQL 编辑器中编写SELECT hidden_column FROM tableSELECT * from table,并且能够查看这些字段及其值。要阻止人们查看某些列,请参阅数据沙盒

列顺序

Metabase 默认使用数据库架构中定义的列顺序。要手动重新排序问题结果和菜单中的列显示顺序,请点击每列右侧的拖动条,并将列拖动到新位置。

自动排序列,请点击第一列设置框右上角的排序图标。排序选项为

  • 数据库。(默认)列在数据库中出现的顺序。
  • 按字母顺序。A、B、C……无论字母表如何排列。
  • 自定义。您选择顺序。如果您重新排列任何列,Metabase 将自动将排序顺序切换为“自定义”。
  • 智能。Metabase 为您选择。

字段类型

要更改列的字段类型,请点击列设置框中的类型下拉菜单。您还可以使用类型下拉菜单将列标记为 Metabase 中的实体键(主键)或外键(对数据库无影响)。

转换为特定数据类型

如果您希望 Metabase 将文本或数字列视为日期时间列

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到转换为特定数据类型
  5. 选择一个转换选项。

Metabase 目前在转换为特定数据类型中支持有限的转换选项。如果您需要转换为 Metabase 中不可用的类型,您可以创建 SQL 查询来转换数据并将其保存为模型,或者直接在数据库中创建视图。

文本到日期时间转换选项:

  • ISO8601->日期
  • ISO8601->日期时间
  • ISO8601->时间

数字到日期时间转换选项:

  • UNIXMicroSeconds->日期时间
  • UNIXMilliSeconds->日期时间
  • UNIXNanoSeconds->日期时间
  • UNIXSeconds->日期时间

文本到数字转换选项:

  • 字符串->整数
  • 字符串->浮点数

其他选项:

  • 浮点数->整数
  • 日期时间->日期

转换与设置字段类型不同。例如,假设您的数据库中有一个字符串数据类型的“创建时间”列。如果您想执行以下操作,则需要将“创建时间”转换为上述日期时间类型之一:

  • 创建相对日期筛选器,例如“创建时间 = 上周”。
  • 将“创建时间”与datetimeAdd等公式一起使用。

表元数据管理设置转换数据类型不会影响数据库中的原始数据类型。

更改筛选器小部件

要更改列的筛选器小部件

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到此字段上的筛选
  5. 选择一个筛选器小部件选项。

筛选器小部件选项

字段的筛选器的默认行为。

  • 搜索框:显示一个搜索框,并建议与搜索词匹配的该列中的值自动补全。
  • 所有值的列表:显示一个搜索框,以及一个下拉菜单中值的复选框列表,人们可以选择这些值作为搜索词。
  • 纯输入框:显示一个搜索框,但建议自动补全。

将搜索框筛选器更改为下拉筛选器

下拉筛选器小部件可能很挑剔,因为 Metabase 需要运行扫描才能获取下拉菜单的值列表。

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 滚动到您的列。
  4. 在列的设置框中,将类型设置为“类别”。
  5. 此字段上的筛选设置为“所有值的列表”。

当您将默认筛选器更改为下拉筛选器时,将触发数据库查询,该查询获取该列的前 1,000 个不同值(按升序排列)。Metabase 将缓存前 100KB 的文本以在下拉菜单中显示。如果您的列有超过 1,000 个不同值,或包含大量文本数据,我们建议将此字段上的筛选设置为“搜索框”。

重新映射列值

假设您有一个列,其值为 1、2 和 3,并且您想将每个数字映射到“低”、“中”和“高”值。这种映射可以在具有数字或外键字段类型的列上进行。

重新映射数字

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到显示值
  5. 从下拉菜单中选择“自定义映射”。
  6. 映射值下方输入显示值。

重新映射外键

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到显示值
  5. 从下拉菜单中选择“使用外键”。
  6. 从第二个下拉菜单中选择一个列名。
  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 从侧边栏中选择格式
  5. 显示为中,选择链接
  6. 可选:在链接文本下设置显示文本。
  7. 链接 URL 字段中输入 URL。
  8. 可选:通过添加列名作为{{parameter}}来创建动态 URL。

Format as URL

例如,如果您将“形容词”列的链接 URL 设置为

https://www.google.com/search?q={{adjective}}

当某人点击“形容词”列中的“歪斜”值时,他们将被带到 Google 搜索 URL

https://www.google.com/search?q=askew

刷新或丢弃缓存值

要更新筛选器下拉菜单中的值,请刷新或重置缓存值。缓存操作包括

  • 重新扫描此表或字段以手动扫描新或更新的列值。如果可能,请在非高峰时段重新扫描表,因为扫描可能会减慢您的数据库速度。
  • 丢弃缓存字段值以清除缓存值并阻止它们显示在您的筛选器小部件中。

表缓存操作

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击右上角(退出管理下方)的齿轮图标。
  4. 选择一个缓存操作。

列缓存操作

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到缓存字段值
  5. 选择一个缓存操作。

展开 JSON

如果 Metabase 支持数据库的 JSON 展开功能,您可以决定是否将 JSON 展开为组件字段,其中每个 JSON 键都成为一个列。如果性能缓慢,您可以关闭此功能。

  1. 转到管理设置 > 表元数据
  2. 找到您的数据库和表。
  3. 点击列设置框右侧的齿轮图标。
  4. 滚动到展开 JSON
  5. 切换 JSON 展开。

延伸阅读

阅读其他Metabase 版本的文档。

© . All rights reserved.