在 postgresql 我有select col1, col2 from my_function()
。我怎样才能在 sqlalchemy 核心中做到这一点?
select(func.my_function())
将结果作为字符串给出,但我想要一个元组。
你会想要使用FunctionElement.alias()重量轻column():
from sqlalchemy import func, select, column
stmt = select([column('col1'), column('col2')]).\
select_from(func.my_function().alias())
该文档特别提到 Postgresql 作为此构造的用例。上面的结果是:
SELECT col1, col2
FROM my_function() AS anon_1
使用参数_可选 of column()
你还可以:
In [4]: fn = func.my_function().alias()
In [5]: stmt = select([column('col1', _selectable=fn),
...: column('col2', _selectable=fn)])
In [6]: print(stmt)
SELECT anon_1.col1, anon_1.col2
FROM my_function() AS anon_1
但是由于_可选没有记录,这可能不是一个好主意。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)