gpt4 book ai didi

python - 如何在 SQLAlchemy 中使用过滤运算符

转载 作者:行者123 更新时间:2023-11-29 11:05:21 24 4
gpt4 key购买 nike

使用 SQLAlchemy,我可以使用 endswith 方法查询过滤结果:

session.query(MyObject).filter(MyObject.uuid.endswith("z")).all()

startswith类似:

session.query(MyObject).filter(MyObject.uuid.startswith("a")).all()

contains 遵循相同的语法:

session.query(MyObject).filter(MyObject.uuid.contains('c')).all()

我想知道 ==!= 运算符是否可以替换为类似的语法。所以,而不是:

 session.query(MyObject).filter(MyObject.uuid=='cfbb4cdb57').all()

它会是这样的:

session.query(MyObject).filter(MyObject.uuid.is('cfbb4cdb57')).all()

最佳答案

是的。

.is_().isnot() 以及显式调用 .__eq__()

但是请注意,is==not the same in Python 。来自 PEP8:

Comparisons to singletons like None should always be done with is or is not , never the equality operators

所以,我认为您需要使用 == (而不是 __eq__)来表示非单例,并使用 is_() 来进行比较

可查询属性的完整列表是 here .

关于python - 如何在 SQLAlchemy 中使用过滤运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41494196/

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