使用 sqlalchemy 查询使用多列 where in 子句
Posted
技术标签:
【中文标题】使用 sqlalchemy 查询使用多列 where in 子句【英文标题】:Using sqlalchemy to query using multiple column where in clause 【发布时间】:2014-10-15 16:58:02 【问题描述】:我希望使用 sqlalchemy 执行此查询。
SELECT name,
age,
favorite_color,
favorite_food
FROM kindergarten_clas-s-room
WHERE (favorite_color,
favorite_food) IN (('lavender','lentil soup'),('black','carrot juice'));
我只想要喜欢(薰衣草和扁豆汤)或(黑胡萝卜汁)的孩子。此外,这可能是一大堆最喜欢的颜色和食物(可能 > 10K),所以我想大批量地做这些。
这很相似,但并没有完全让我明白: Sqlalchemy in clause
【问题讨论】:
***.com/q/20461887/1632891的可能重复 【参考方案1】:你想要tuple_
构造:
session.query(...).filter(
tuple_(favorite_color, favorite_food).in_(
[('lavender', 'lentil soup'), ('black', 'carrot juice')]
)
)
【讨论】:
是的,这正是我想要的。谢谢。以上是关于使用 sqlalchemy 查询使用多列 where in 子句的主要内容,如果未能解决你的问题,请参考以下文章