小编Ang*_*mov的帖子

使用 dbt for 循环在 BigQuery 中创建多个表

我正在尝试使用 dbt 中的 for 循环在 BigQuery 的单个数据集中创建单个表,遍历帐户列表,但到目前为止没有成功。一点上下文 - 我正在使用 Stitch 从 Facebook 广告中获取数据并将其推送到我们的 BigQuery 仓库。然后,基于下面的模型,为每个帐户创建新的单独表,其中包含聚合/建模数据。

变量的声明如下所示:

-- table that contains list of accounts
{% set account_data = ref('bq_acct_list') %} 
{% set accounts = get_column_values(table=account_data, column='bq_name_suffix') %}
Run Code Online (Sandbox Code Playgroud)

表必须基于的查询是:

SELECT 
        DATE_TRUNC(DATE(date_start), DAY) date,
        account_id,
        account_name,
        ROUND(SUM(spend), 2) ad_spend
FROM `{{ target.project }}.{{account}}.ads_insights`
GROUP BY 1, 2, 3
Run Code Online (Sandbox Code Playgroud)

缺少的(我认为)是查询的包装器 + for 循环本身。谁能帮我填空?

sql jinja2 jinja2-cli dbt

2
推荐指数
1
解决办法
1666
查看次数

标签 统计

dbt ×1

jinja2 ×1

jinja2-cli ×1

sql ×1