JVA*_*JVA 2 variables casting date dbt
我需要向我的 dbt 模型添加一列,该列显示模型运行时的当前日期。
我尝试将{{ run_started_at.strftime("%Y-%m-%d") }}其直接添加到我的模型中,还尝试设置一个名为 date 的变量并创建这段代码 ( {% set report_date = dbt_utils.get_query_results_as_dict("select dateadd(day,-1,current_date()) as col")["COL"][0] %}),但问题是日期,就像我们今天在 2021 年 12 月 14 日那样,结果为这一栏是 1995 年(这是 的减法2021 - 12 - 14)。那么,现在有人有办法将此变量转换为日期吗?谢谢!
小智 7
好吧,我想我现在知道这个秘密了
请记住 dbt 是一个类似代码生成的工具
就你而言,我想你必须将 jinja 代码包装在字符串引号中
错误的:
SELECT {{ run_started_at.strftime("%Y-%m-%d") }} as YourColumn
--compiled: SELECT 2021-12-14 as YourColumn
--YourColumn=1995
Run Code Online (Sandbox Code Playgroud)
正确的:
SELECT '{{ run_started_at.strftime("%Y-%m-%d") }}' as YourColumn
--compiled: SELECT '2021-12-14' as YourColumn
--YourColumn=2021-12-14
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7688 次 |
| 最近记录: |