问题描述
我正在尝试从sql构建具有基于where子句的delete语句的DBT模型。
有人可以建议我如何将下面的sql delete语句转换为DBT模型吗?
''' 删除table_name的条件;
'''
谢谢
解决方法
在dbt中有两个用于运行DELETE语句的选项:
- 为现有模型添加DELETE语句作为pre_hook or post_hook
- 创建一个operation macro来独立于模型运行DELETE语句
请注意,除非您的模型实现类型为“增量”,否则从模型目标中删除就没有多大意义。
免责声明:我已经很长时间没有使用dbt了,所以可能有更好的方法可以做到这一点,或者有理由完全不这样做。
不确定您的用例是什么,但是在将现有数据仓库逻辑改造为dbt时,我不得不使用DELETE。如果您是从头开始使用dbt,则可以尝试避免使用需要删除数据的设计。