我想写postgres alter script在现有表中添加一列 我试过这个脚本,它在 ms sql server 和 oracle 中工作得很好 但我在 postgres sql
中收到错误错误:类型“AS”不存在 第1行:alter table员工添加unique_colum SET(情况......
ALTER TABLE employee add unique_colum AS (case when flag = 'n' then ids else name end);
标记和 ID 是现有的列,我想再添加一个名为 unique_colum 的列 和来自任何现有表的新列的值。
答案 0 :(得分:2)
Postgres不支持计算列。您正在Postgres中使用SQL Server的语法。
您可以使用视图获得类似的功能:
create view v_employee as
select e.*, (case when flag = 'n' then ids else name end) as unique_column
from employee;