在查询中执行查询(PostgresAdmin III)

时间:2017-12-30 10:21:51

标签: postgresql pgadmin

我有一个非常长的清洁程序,其中包括1000次"替换"。 我把它保存在一个单独的文件中。 所有其他进程在另一个查询中定义。 我想从主查询中执行清理文件。 这可能吗?怎么做?

实施例: 主查询文件

create table a as
select * from b;
--a lot of other stuff--

execute cleaning query here!! -- I want to execute the cleaning query within my main query 
-- cleaning query looks as follows (don't want to paste this into main query):
create table a_ as 
select *, replace(replace(replace(...(a1
, 'WORD1', '')
, 'WORD2', '')
, 'WORD3', '')
... from a ;
-- end of cleaning query
--again a lot of stuff --

1 个答案:

答案 0 :(得分:0)

我建议您使用触发器。 PostgreSqlDocumentation: trigger

触发器允许您调用函数(查询);你也可以为每一行声明 ,这样你就可以写一个只引用一个通用行的查询,而不是触发器将它应用到表的每一行(你也可以要求条件得到满足)