测量

用法

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 的文档