如何在Google Looker中跨视图关联度量字段sum_order_value?
Google Looker开发:视图关联与度量引用问题解决
报错原因
你直接在视图B的度量中引用${view_A},但视图A与视图B未建立关联关系,Looker无法识别跨视图的字段引用,因此抛出“Unknown or inaccessible field”错误。另外,${view_A}是视图整体引用,而非具体字段,写法本身也不符合规范。
正确操作步骤
表关联操作不是在视图文件中执行,而是在**模型文件(.model.lkml)**中定义,模型文件负责管理多视图/表之间的关联逻辑。
1. 在模型文件中建立视图关联
假设视图A和视图B通过order_id字段关联,在模型文件中添加以下关联配置:
explore: view_A { join: view_B { sql_on: ${view_A.order_id} = ${view_B.order_id} ;; type: left_outer // 根据业务需求选择关联类型,如inner、right_outer等 } }
如果需要从视图B的Explore中关联视图A,也可以将关联写在explore: view_B下。
2. 引用视图B的sum_order_value度量
有两种实现方式:
- 方式一:在视图A中新增度量引用
在视图A的.lkml文件中添加度量,直接引用关联后的视图B字段:measure: sum_order_value_from_B { type: sum sql: ${view_B.order_value} ;; description: "汇总视图B中的订单金额" } - 方式二:直接在Explore中使用
模型中建立关联后,在Looker的Explore界面,选择视图A的同时,即可直接选中视图B的sum_order_value度量进行使用,无需额外在视图A中定义。
内容的提问来源于stack exchange,提问作者Pandafreak
相关产品推荐
相关产品推荐

