postgresql 触发器中怎么在UPDATE中用变量代替栏位

UPDATE public.opentime_count
SET v_type=new."Acount"
WHERE type='A';
中的v_type我想用一个变量为T1,T2,T3

可以使用动态sql来实现在postgresql触发器中使用变量代替栏位的操作。具体步骤如下:

  1. 声明变量并赋值

DECLARE var_type text := 'T1';

  1. 构造动态sql语句

EXECUTE 'UPDATE public.opentime_count SET '|| var_type || '=new."Acount" WHERE type='A'';

这里的||是连接运算符,将字符串连接起来。执行完这句动态sql语句后,就可以将new."Acount"的值赋给指定的变量T1、T2或T3。

希望这个回答能够帮到你。