在查询中选择硬编码值的方法是什么?

Mic*_*ura 1 python sqlalchemy

我有一个使用硬编码值的 SQL 查询:

select col1, col2, 'some hard coded value' as col2  
from table_a  
union all  
select col1, col2, col3  
from table_b
Run Code Online (Sandbox Code Playgroud)

我在 SQLAlchemy 中尝试了以下操作:

result = session.query(table_a.col1, table_a.col2, 'hardcoded value'.label('col3')
Run Code Online (Sandbox Code Playgroud)

但得到了AttributeError,这是有道理的。我还考虑过在 Python 中添加值然后进行联合。

如何将此硬编码值添加到 SQLAlchemy 查询中?

dav*_*ism 6

使用literal构造。

from sqlalchemy import literal

result = session.query(
    table_a.c.col1, table_a.c.col2, literal('hardcoded value').label('col3')
)
Run Code Online (Sandbox Code Playgroud)