什么是flask-sqlalchemy in子句查询语法?

时间:2014-03-15 06:53:16

标签: python flask flask-sqlalchemy

我正在使用flask-sqlalchemy,我的问题在于子句中的位置:

select * from table_1 where id in (1,2,3,5)
OR
select * from table_1 where field_1_id in (select id from table_2 where .... )

和get_or_create像peewee orm

Object.get_or_create(.......)

如何用flask-sqlalchemy生成这句话?

2 个答案:

答案 0 :(得分:14)

在sqlalchemy中尝试.in_ clause

result = db_session.query(table_1).filter(table_1.id.in_((1,2,3,5))).all()

注意:这里假设table_1是您的模型

答案 1 :(得分:0)

或者,您也可以使用以下语法:

result = TableName.query.filter(TableName.id.in_([1,2,3]))

注意:我使用的是flask-sqlalchemy。