【发布时间】:2019-11-25 20:21:24
【问题描述】:
在 Postgres 中哪个更快 - 创建具有默认值的列或创建可为空的列并手动更新具有常量值的列?
我问是因为 Postgres 中的更新是使用真空插入和删除。是否同样适用于使用默认创建列?
【问题讨论】:
-
你应该测试它,但我认为更新会更慢。
-
我会推动用例来指示要实施哪一个。如果只是出于好奇,您可以忽略此评论。我不知道哪个更快。
-
我认为默认为 null 的可空列然后手动更新将比在创建时设置默认值更昂贵。但是,除非您有数十亿行要更新,否则我认为您采用哪种方式并不重要。
-
您认为哪些用例很重要?
-
如果你想要一个默认值,只需指定它。
标签: sql postgresql