DBT/Snowflake - 识别每个模型更新和插入的行

问题描述 投票:0回答:1

我的利益相关者要求在每个模型更新或插入新数据(通过合并)到某个表中后,需要更新日志表,如下所示:

日志表:

TABLE_LOADED    INSERTED_ROWS     UPDATED_ROWS
TAB_1           1500              1000

关于如何解决这个问题有什么想法吗?如何使用后钩子或分别计算插入行和更新行数的包来识别?

谢谢

snowflake-cloud-data-platform dbt
1个回答
0
投票

Query_history 将返回 ROWS_INSERTED 和 ROWS_PRODUCED(插入+更新)。

https://docs.snowflake.com/en/sql-reference/functions/query_history

如果您想要每个合并操作的 number_of_rows_inserted 和 number_of_rows_updated ,那么您可以使用 GET_QUERY_OPERATOR_STATS 函数:

示例:

选择 OPERATOR_STATISTICS 从表(get_query_operator_stats('

请查看以下文档以获取更多信息:

https://docs.snowflake.com/en/sql-reference/functions/get_query_operator_stats#operator-statistics

© www.soinside.com 2019 - 2024. All rights reserved.