视图

用法

视图view_name { ... }
层次结构
默认值

接受
Looker 标识符

特殊规则
  • 如需使用该视图,必须通过 explorejoin 参数引用该视图
  • 视图名称在任何给定模型中都必须是唯一的

定义

如果视图名称前面有加号 (+),例如 view: +orders,则表示该视图是视图的细化。如需了解详情,请参阅 LookML 细化文档页面。

view 参数及其底层参数描述了将在 Looker 模型中使用的数据表。该表可以已存在于您的数据库中,也可以使用 Looker 的派生表功能创建新表。

对于现有数据库表,视图的名称通常与您要使用的表的名称一致。如果您希望视图名称与基础表不同,或者需要引用其他数据库或架构中的表,可以添加 sql_table_name 参数。

对于派生表,视图的名称可以是任何标识符。然后,对派生表的引用使用该标识符名称。

创建视图后,您必须在 explorejoin 参数中引用该视图,才能让用户看到该视图。

如果您在探索中使用 type: count度量,可视化图表会使用视图名称而非“数量”一词来标记结果值。为避免混淆,我们建议您将视图名称改为复数形式,在图表设置的序列下选择显示完整字段名称,或使用包含视图名称复数形式的 view_label

示例

使数据库中的 orders 表可用于建模:

view: orders {}

创建名为 user_factsderived_table

view: user_facts {
  derived_table: {
    sql: … ;;
  }
}

使数据库中的 order_1 表可用于建模,但使用 sql_table_name 参数将其称为 orders

view: orders {
  sql_table_name: order_1 ;;
}

使用 sql_table_name 参数,使 analytics 架构中的 users 表可用于建模:

view: users {
  sql_table_name: analytics.user ;;
}

常见挑战

在通过 explorejoin 添加视图之前,用户无法访问该视图

创建视图本身不会执行任何操作。为了让用户能够与之互动,视图必须由 explorejoin 参数引用。

在探索中,两个视图必须使用不同的名称进行引用

在任何给定的探索中,一个视图可以多次使用,但每个视图都必须具有唯一的引用。如果您需要将视图多次联接到探索,则需要在联接中使用 from 参数。

view 引用的表必须可通过当前连接访问

视图由 explorejoin 参数引用,而这些参数又由模型引用。模型会确定使用哪个数据库连接(请参阅 connection 参数)。数据库连接本身是在 Looker 的管理部分中定义的,并且它们具有关联的默认架构。

view 参数中引用表时,该表需要在关联的连接中可访问。此外,如果您需要引用非默认架构中的表,则需要使用 sql_table_name 参数来提供非默认架构名称。

注意事项

view 通常包含维度和度量

虽然从理论上讲,view 可以单独使用,但在实践中,它几乎总是包含嵌套在下面的维度和指标。维度可用于访问数据库表的列,而度量则可用于聚合列。

维度、过滤条件和参数类型文档页面介绍了维度,而衡量类型文档页面介绍了衡量。此外,您还可以使用维度组定义过滤字段和基于日期的维度字段组。