2026 年 4 月 16 日:动态表中的主键支持(正式发布

Snowflake 现在可以在动态表中使用主键来跟踪行级更改,并启用全刷新动态表下游的增量刷新。此版本包括以下能力:

  • 基表定义的主键:当基表具有带 RELY 属性的主键时,Snowflake 会将其用于下游动态表中的更改跟踪。当基表通过 INSERT OVERWRITE 定期重写时,这尤其有用,因为通常情况下这会阻止跨表版本的更改跟踪。

  • 查询派生的主键:Snowflake 会自动从动态表的查询定义中派生主键。带有 GROUP BY 子句或 QUALIFY ROW_NUMBER() = 1 过滤器的查询会产生 Snowflake 进行更改跟踪所依赖的唯一约束。

  • 全刷新动态表上的增量刷新:增量刷新模式下的动态表现在可以读取使用全刷新模式的上游动态表,只要上游表具有系统派生的主键。要使用此能力,请在下游动态表上显式设置 REFRESH_MODE = INCREMENTAL

要检查动态表是否具有派生主键,请运行 SHOW UNIQUE KEYS IN <dt_name>

有关更多信息,请参阅 了解动态表中的主键。要通过分步示例尝试此功能,请参阅 教程:使用主键优化动态表管道