如何使用 python psycopg2 改进来自大型 table 的添加列查询

How to improve add column query from large table using python psycopg2

我正在使用以下命令在 postgresql 中现有的大型 table 中添加新列。

alter table table_name add column column_name bigserial

有什么方法可以提高上述大型查询的性能 table?

要减少锁定时间,您可以:

alter table table_name add column column_name bigint;
create sequence seq_name;
with c as (select * from table_name) 
  update table_name set column_name = nextval('seq_name'::regclass);

alter table table_name alter column column_name set default nextval('seq_name');