Python “中是否支持IN操作员?”;SQL表达式语言“;用于炼金术?

Python “中是否支持IN操作员?”;SQL表达式语言“;用于炼金术?,python,sqlalchemy,Python,Sqlalchemy,是否可以用SQLAlchemy中使用的“SQL表达式语言”来表达下面这样的查询 SELECT * FROM foo WHERE foo.bar IN (1,2,3) 我想避免用纯文本写WHERE子句。有没有一种方式可以表达这一点,类似于我下面的例子,或者不使用纯文本的方式 select([foo], in(foo.c.bar, [1, 2, 3])) 您可以将该方法用于列或插入指令的属性。两者都有效 在SQLAlchemy的第一个教程中。中的.in()操作符现在位于ColumnOperators

是否可以用SQLAlchemy中使用的“SQL表达式语言”来表达下面这样的查询

SELECT * FROM foo WHERE foo.bar IN (1,2,3)
我想避免用纯文本写WHERE子句。有没有一种方式可以表达这一点,类似于我下面的例子,或者不使用纯文本的方式

select([foo], in(foo.c.bar, [1, 2, 3]))
您可以将该方法用于列或插入指令的属性。两者都有效

在SQLAlchemy的第一个教程中。

中的.in()操作符现在位于ColumnOperators类中,已记录@

用法示例:

ids_to_select = ["1", "2", "3"]
query(Model).filter(Model.id.in_(ids_to_select)).all()

谢谢你的快速回答。您的示例中的一个输入错误,in应该是in。@suzanshakya它们现在已修复
select([foo], foo.c.bar.in_([1, 2, 3]))
ids_to_select = ["1", "2", "3"]
query(Model).filter(Model.id.in_(ids_to_select)).all()