我有一個包含這段代碼的程式
SELECT query INTO query FROM temp_table_test WHERE id = whateverId;
EXECUTE query;
我的查詢變數將包含類似
CALL Someprocedure (withSomeParameters)
我怎樣才能在第一個程序中使引數動態化,因為它們會不時改變,而我不能在變數中使它們靜態化?
在 t-SQL 中有一些東西
sp_executesql
但是由于我對 postgres 很陌生,我不知道從哪里開始。
uj5u.com熱心網友回復:
假設您使用的是 pl/pgsql,您可以使用 USING子句傳遞引數;
EXECUTE query USING $1, $2, $3, ...;
例如;
query = 'SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = $1 AND "field_c" = $2';
EXECUTE query USING 5, 10;
這將等于:
SELECT SUM( "field_a" ) FROM "table" WHERE "field_b" = 5 AND "field_c" = 10;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/337117.html
