0

在查看了以下两个资源后:

我无法找到这个问题的答案:

给定一个标准的 dbt 项目目录,我定义了一个sources.yml指向包含字符名称的预先存在的 bigquery 表。

sources.yml

version: 2

sources:
    - name: biqquery
      tables: 
        - name: `fa--task.dataset.addresses`
        - name: `fa--task.dataset.devices`
        - name: `fa--task.dataset.orders`
        - name: `fa--task.dataset.payments`

在 ` 中使用波浪号直接从 select 语句中成功:

(select * from `fa--task.dataset.orders`) 

但在源中未被识别为有效的 yaml。

期望的结果是这样的:

{{ sources('bigquery','`fa--task.dataset.addresses`') }}

编辑:根据要求更新了 source.yml: 在此处输入图像描述

4

1 回答 1

2

试试这个!

version: 2

sources:
  - name: bigquery # are you sure you want to name it this? usually we name things after the data source, like 'stripe', or 'saleforce'
    schema: dataset
    database: fa--task
    tables: 
      - name: addresses
      - name: devices
      - name: orders
      - name: payments

然后在您的模型中可以执行以下操作:

select * from {{ source('bigquery', 'addresses') }}

可能值得查看有关源的指南以了解这里发生的事情,以及源属性的文档,其中包含键下可用的source:键列表。

于 2020-09-29T13:38:16.817 回答