gpt4 book ai didi

python - sqlalchemy 查询 : select using list of tuples

转载 作者:行者123 更新时间:2023-11-29 02:20:34 27 4
gpt4 key购买 nike

所以我有一个元组列表,例如 [('Alex', 20), ('Steve', 50)]

现在我需要在 Users 表上触发一个选择查询来获取匹配的记录。

我这样试过:-

users = [('Alex', 20), ('Steve', 50)]
names = [r[0] for r in users]
ages = [r[1] for r in users]

query = self.session.query(Users).filter(
and_(Users.name.in_(names),
Users.age.in_(ages)))

我想要 Alex 用户年龄 20Steve 用户年龄 50 的记录,但是这个查询还会给我 Alex 年龄 50 的用户。

所以这个查询并没有真正解决。需要一些帮助来解决这个问题。

最佳答案

要仅获取姓名和年龄与您的 users 列表匹配的用户,您必须将 nameage 过滤器与 AND 子句并将它们连接到 OR 子句中。例如。像这样:

user_filters = [and_(Users.name == name, Users.age == age)
for name, age in users]
self.session.query(Users).filter(or_(*user_filters))

关于python - sqlalchemy 查询 : select using list of tuples,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32584301/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com