【发布时间】:2021-12-11 23:54:15
【问题描述】:
是否有一个 postgres 查询可以向现有表中添加一个新列,并自动为该表的所有行填充特定值,例如 "A1",仅一次,随着列的创建,我仍然可以将列的默认值设置为另一个值,比如说"B2"?
为了清楚起见,我正在寻找这样的东西:
给定my_table:
name | work
------------------------
bob | fireman
carl | teacher
alice | policeman
我的查询
ALTER TABLE my_table
ADD COLUMN description varchar(100)
DEFAULT "B2"
COMMAND_I_D_WISH_TO_KNOW "A1";
把my_table改成
name | work | description
-------------------------------------
bob | fireman | "A1"
carl | teacher | "A1"
alice | policeman | "A1"
这样如果之后我运行查询
INSERT INTO my_table(name, work)
VALUES karen, developer;
my_tables 变为
name | work | description
-------------------------------------
bob | fireman | "A1"
carl | teacher | "A1"
alice | policeman | "A1"
karen | developer | "B2"
【问题讨论】:
标签: sql postgresql ddl