postgresql触发器语句语法(当数据位于其他表中时。)

postgresql触发器语句语法(当数据位于其他表中时。),postgresql,Postgresql,我正在尝试学习在PGSql中创建触发器语句,但在为此传递数据列时遇到了问题 所以,通常情况下,我会这样: CREATE TRIGGER tsv_gin_update BEFORE INSERT OR UPDATE ON MySuperTable FOR EACH ROW EXECUTE PROCEDURE tsvector_update_trigger(content_tsv_gin,'public.wtf',content) CREATE TRIGGER tsv_gin_update

我正在尝试学习在PGSql中创建触发器语句,但在为此传递数据列时遇到了问题

所以,通常情况下,我会这样:

CREATE TRIGGER tsv_gin_update BEFORE INSERT OR UPDATE 
ON MySuperTable FOR EACH ROW EXECUTE  PROCEDURE 
tsvector_update_trigger(content_tsv_gin,'public.wtf',content)
CREATE TRIGGER tsv_gin_update BEFORE INSERT OR UPDATE 
ON MySuperTable FOR EACH ROW EXECUTE PROCEDURE 
tsvector_update_trigger(content_tsv_gin,'public.wtf',nt.content) FROM NewTable nt;
在这里,
content
content\u tsv\u gin
只是
MySuperTable
上的列,这非常有效

但是,我想要的是从另一个表提交的
内容,而不是
MySuperTable
。所以,我试过这样的方法:

CREATE TRIGGER tsv_gin_update BEFORE INSERT OR UPDATE 
ON MySuperTable FOR EACH ROW EXECUTE  PROCEDURE 
tsvector_update_trigger(content_tsv_gin,'public.wtf',content)
CREATE TRIGGER tsv_gin_update BEFORE INSERT OR UPDATE 
ON MySuperTable FOR EACH ROW EXECUTE PROCEDURE 
tsvector_update_trigger(content_tsv_gin,'public.wtf',nt.content) FROM NewTable nt;

。。这不起作用,给我一个错误。。。因此,我想知道如何将另一个表中的数据列传递到触发器语句中-如果可能的话…

我认为这是不可能的,但是您不能将列/表名作为文本传递,然后从触发器函数中获取数据吗?@mlinth:您知道这方面的示例吗?嗯,触发器调用的函数可以包含任何SQL语句,因此您只需构建一个常规的select查询。不管怎样,您都必须运行自己的函数。。。