【问题标题】:Postgresql database altering table with mln rows具有百万行的 Postgresql 数据库更改表
【发布时间】:2021-12-27 09:30:19
【问题描述】:

我有 mn 行的表,我想添加默认值为 0 的新列。这是真正的方法吗?是否需要太长时间?请给我最好的方法来做到这一点

【问题讨论】:

    标签: postgresql ddl


    【解决方案1】:

    由于 Postgres 11 添加具有恒定默认值的列,不会重写整个表,因此实际的 ALTER TABLE 命令只需几毫秒 - 一旦它能够获得锁。

    所以最好的方法是

    alter table the_table
       add new_column integer default 0;
    

    【讨论】:

      猜你喜欢
      • 2018-12-21
      • 1970-01-01
      • 2011-01-04
      • 2012-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多