Serg 基本上是正确的。 您的 dyna-SQL 是“单独 执行”的, 因此它必须是有效的SQL语句(
“知道”所有涉及的表)。
但是要在这里正确引用它,您的示例应该类似于(实际上,您应该 使用2ndeval( sql text, keys text[], vals text[])
变体!):
eval( 'select '||c.price_expression||' from product where id=:pid', '{"{cost}",:pid}', array[ p.cost, p.id ] ) as cust_cost与 Serg 的建议相比,这应该更加直接,健壮和模块化。



