将参数添加到postgreSQL中的动态EXECUTE
add parameter to dynamic EXECUTE in postgreSQL
我有一个包含这段代码的程序
SELECT query INTO query FROM temp_table_test WHERE id = whateverId;
EXECUTE query;
我的查询变量将包含类似
的内容
CALL Someprocedure (withSomeParameters)
我怎样才能在第一个过程中使参数动态化,因为它们会不时改变,而我不能在变量中使它们静态化?
在 t-SQL 中有一些东西
sp_executesql
但是由于我对 postgres 很陌生,所以我不知道从哪里开始。
假设您正在使用 pl/pgsql,您可以使用 USING 子句传递参数;
EXECUTE query USING , , , ...;
例如;
query = 'SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = AND "field_c" = ';
EXECUTE query USING 5, 10;
这将等于:
SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = 5 AND "field_c" = 10;
我有一个包含这段代码的程序
SELECT query INTO query FROM temp_table_test WHERE id = whateverId;
EXECUTE query;
我的查询变量将包含类似
的内容CALL Someprocedure (withSomeParameters)
我怎样才能在第一个过程中使参数动态化,因为它们会不时改变,而我不能在变量中使它们静态化?
在 t-SQL 中有一些东西
sp_executesql
但是由于我对 postgres 很陌生,所以我不知道从哪里开始。
假设您正在使用 pl/pgsql,您可以使用 USING 子句传递参数;
EXECUTE query USING , , , ...;
例如;
query = 'SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = AND "field_c" = ';
EXECUTE query USING 5, 10;
这将等于:
SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = 5 AND "field_c" = 10;