CREATE TABLE LIKE 另一个表,但有额外的列

Alb*_*man 12 postgresql ddl

有没有办法创建一个与另一个表具有相同结构但具有附加列的表?从这个问题,我可以复制一个表的结构:

CREATE TABLE new_table_name ( like old_table_name including all)
Run Code Online (Sandbox Code Playgroud)

然后我可以一次添加一个列,ALTER TABLE new_table_name ADD COLUMN...但我正在寻找一种更简洁的方法,例如:

CREATE TABLE new_table_name ( like old_table_name including all), new_col1 new_col1_type, new_col2 new_col2_type,...
Run Code Online (Sandbox Code Playgroud)

Sah*_*sci 24

您可以使用以下语法;

CREATE TABLE old_table_name (
  id serial,
  my_data text,
  primary key (id)
);

CREATE TABLE new_table_name ( 
  like old_table_name including all,
  new_col1 integer, 
  new_col2 text

);
Run Code Online (Sandbox Code Playgroud)

小提琴在这里