测量

用法

view: view_name {
  measure:  field_name { ... }
}
层次结构
measure
接受
用于为衡量指标命名的 Looker 标识符

定义

measure 参数用于声明新的衡量指标(聚合),并为该衡量指标指定名称。

衡量指标的名称需要满足以下几个条件:

  • 在任何给定视图中,该名称都必须是唯一的。
  • 该名称必须由字符 az(无大写字母)、09_ 组成。
  • 该名称必须以字母开头。

衡量指标有很多类型,如衡量指标类型文档页面中所述。

measure 的子参数

如需查看 LookML 字段可用的子参数列表,请参阅字段参数参考页面。

示例

在名为 products 的视图中创建名为 product_counttotal_value 的衡量指标:

view: products {
  measure: product_count {
    type: count
  }
  measure: total_value {
    sql: ${value} ;;
    type: sum
  }
}

注意事项

联接视图中的衡量指标

如需让衡量指标(聚合)通过联接传递,您必须在联接中涉及的所有视图中定义主键。

您可以通过将 primary_key 参数添加到每个视图中的主键字段定义来实现此目的:

dimension: id {
  type: number
  primary_key: yes
}

为了正确处理联接的衡量指标,Looker 需要您指定一个主键,该主键的值完全唯一且非 NULL。如果您的数据不包含主键,请考虑将多个字段串联起来是否会生成一个完全唯一且非 NULL 的主键。如果您的主键不唯一或包含 NULL 值,并且您的查询包含揭示这些问题的数据,则 Looker 会返回错误,如计算总和时的错误:非唯一值/主键(或 sql_distinct_key)、值溢出或冲突最佳实践页面中所述。

基于其他衡量指标的衡量指标

您可以定义基于其他衡量指标的衡量指标。新的衡量指标必须是 type: number,以避免嵌套聚合错误。如需查看示例和说明,请参阅有关衡量指标的 type: number 的文档