通过flags 可以使用dbt cli 的一些参数,比较常用的是对于增量物化处理的场景
参考使用
{% if flags.FULL_REFRESH %}
drop table ...
{% else %}
-- no-op
{% endif %}
说明
支持的参数都在flags 中可以看看,一些dbt adapter 的实现都会使用到此变量
参考资料
core/dbt/include/global_project/macros/materializations/configs.sql
https://docs.getdbt.com/reference/dbt-jinja-functions/flags
https://github.com/dbt-labs/dbt-core/blob/HEAD/core/dbt/flags.py