更新时间:2025-12-10 GMT+08:00
分享

Iceberg列默认值介绍

列默认值使用场景

  • 添加新列并指定默认值,且还没有新数据写入,读取时新列的值会使用initial-default(初始默认值)。
  • 执行写入时,被缺省的字段(写入时没有指定该字段的值)将会使用write-default(写入默认值)写入。
  • 不使用列默认值时,initial-defaultwrite-default都是null。

initial-default

执行ALTER TABLE ... ADD COLUMN语句添加新列时,可通过DEFAULT子句设置初始默认值,例如:

ALTER TABLE users ADD COLUMN age INT DEFAULT 25;

write-default

  • 添加新列时write-default被初始化为initial-default
  • 每个列的write-default可以被更改。例如:
    ALTER TABLE users ALTER COLUMN age SET DEFAULT 30;

相关文档