默认情况下,使用其他列值更新列值

时间:2017-05-12 08:49:03

标签: postgresql function triggers

我有一张像

这样的表格
+ Column1 | Column2 | Column3 +
+---------|---------|---------+
+   1     | val.txt | val.txt +
+   2     | test.xls| test.xls+
+   3     | abc.dwg | abc.dwg +
+   4     | y.txt   | y.txt   +
+   5     | kylk.txt|         + 
...............................
+---------|---------|---------+

现在当第3列中存在空值时,默认情况下它应该添加第2列的值,是否可以在默认条件的同一表列中完成?

创建函数和触发器的想法 我试过创建一个函数但失败了。

CREATE OR REPLACE FUNCTION fun_gen()
RETURNS trigger AS
$BODY$BEGIN
update public.tab_name
set column3=column2
where column3 is null;
END$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;

有没有办法在表列本身上提供默认条件或如何解决它的功能和触发器 我使用postgres 9.4 in centos 7。

提前致谢

0 个答案:

没有答案