使用postgre function 向表中插入数据

使用函数封装sql语句,向函数中传递参数,生成查询数据,如何把生成的数据插入到表中?

DROP FUNCTION aaa(NUMERIC,NUMERIC)
CREATE OR REPLACE FUNCTION aaa(a NUMERIC,b NUMERIC,OUT aa NUMERIC,OUT bb NUMERIC) AS $$
SELECT a+b,a*b;
$$ LANGUAGE SQL;
SELECT  aaa(1,2)

结果为:(3,2)

如何把结果插入到表中?

你可以使用INSERT INTO语句来将SELECT查询结果插入到表中,具体操作如下:

INSERT INTO table_name (column1, column2)
SELECT aaa(1,2);

其中,table_name是你要插入数据的表名,column1和column2是该表中需要插入的列名。在SELECT查询语句中,我们可以调用aaa函数并传入需要的参数,这样查询结果就会得到(3,2),然后将其插入到table_name表中。

需要注意的是,如果表中的列与SELECT查询结果的列不匹配,则会抛出错误。确保插入的结果与表结构相匹配。