我正在尝试从SQLAlchemy执行postgresql自定义函数。我的函数接受输入表的每一行并输出标量值。
CREATE OR REPLACE FUNCTION apply1(line mytable) RETURNS integer
在纯SQL中,我使用以下命令调用此函数:
select apply1(mytable.*) from mytable;
我正在尝试使用SQLAlchemy表达式生成此命令,但没有成功。
示例:
import sqlalchemy as sa
s = sa.func.apply1(MyTable()).select()
生成SQL
SELECT apply1() AS apply1_1 FROM train
我已经测试了SQLAlchemy用户指南中的几个命令但没有成功。 重要的一点是:我必须使用SQLAlchemy表达式,而不仅仅是生成原始SQL命令。
有没有人有一个好的解决方案?
谢谢!