from(适用于“探索”)

本页中提及的 from 参数是探索的一部分。

from 也可用作联接的一部分,如 from(针对联接)参数文档页面所述。

用量

探索:探索名称 {
发件人: 查看名称
}
层次结构
from
默认值
名称与“探索”名称匹配的视图

接受
现有视图的名称

定义

from 决定将定义“探索”各个字段的视图。如果省略 from,Looker 会假设基础视图名称与探索名称相同。通常,仅当您希望“探索”及其字段与底层视图的名称不同时,才使用 from

为便于理解,我们假设在名为 underlying_view 的视图中创建了一个名为 order_value 的维度:

  • 该字段通常在“探索”界面中显示为 UNDERLYING VIEW Order Value,并将在 ${underlying_view.order_value} 中使用 LookML 引用。
  • 在上述使用示例中,该字段将显示为“NEW ALIAS NAME Order Value”,并被引用为“${new_alias_name.order_value}”。

示例

根据名为 user 的视图,在“探索”菜单中添加一个名为客户的选项:

explore: customer {
  from: user
}

常见挑战

fromviewlabel 通常容易混淆,但具有不同的行为

如上所示,from 对探索的标记方式和字段的引用方式具有很多影响。此外,还有一个 view 参数和一个 label 参数,虽然具有类似但不同的效果。

使用 from

如果您想从同一数据视图中创建多个探索,并且还想以不同方式引用每个探索中的字段,则应使用此选项:

explore: customer {
  from: user
}
# Would appear in the Explore menu as 'Customer'
# Fields would appear like 'Customer Name'
# You would reference fields like ${customer.name}

explore: buyer {
  from: user
}
# Would appear in the Explore menu as 'Buyer'
# Fields would appear like 'Buyer Name'
# You would reference fields like ${buyer.name}

出现此行为的根本原因是,使用 from: user 时,生成的 SQL 别名会与原始表名称相同,如下所示:FROM schema.users AS customer

使用 view

如果您希望从同一个数据视图中创建多个探索,并且希望以相同的方式为每个探索引用字段,则应使用此选项:

explore: customer {
  view_name: user
}
# Would appear in the Explore menu as 'Customer'
# Fields would appear like 'User Name'
# You would reference fields like ${user.name}

explore: buyer {
  view_name: user
}
# Would appear in the Explore menu as 'Buyer'
# Fields would appear like 'User Name'
# You would reference fields like ${user.name}

造成这种情况的根本原因是,使用 view_name: user 时,生成的 SQL 会使用原始表名称,如下所示:FROM schema.users AS users

使用 label

如果您需要从同一数据视图中创建多个探索,但希望“探索”名称在“探索”菜单中的显示方式有所不同,那么您应使用此选项:

explore: user {
  label: "Customer"
}
# Would appear in the Explore menu as 'Customer'
# Fields would appear like 'User Name'
# You would reference fields like ${user.name}

注意事项

from 很少与 explore 一起使用

使用 from 重命名“探索”的情况并不常见。虽然有一些合法的用例,但如果您确实想使用此参数,请考虑是否可以直接重命名基础视图。更常见的做法是使用联接级 from 参数重命名联接。