【发布时间】:2021-10-20 16:27:25
【问题描述】:
我使用带有 SQLAlchemy 模型的 flask-appbuilder,我发现他们所有的数据模型过滤器都使用“和”关系。
我的意思是当烧瓶查询某些东西时,它会:
self.datamodel.filter_by(id='abt').filter_by(testz_pro='mytest')
但我想使用“或”关系:
类似的sql:
select * from number where id='1232' or id ='34343'
所以,我必须将“或”关系更改为“和”
所以,我的 sql 是这样的:
select * from number where not (id<>'1232' and id<>'34343')
我只是不知道 SQLAlchemy 查询如何表达“不”。
你能举个例子吗?
【问题讨论】:
-
是否有
IN和NOT IN运算符? -
我在其他一些问题中看到它有
.in_()和.notin_()。 -
我认为我不能这样做,因为 .in_() 或 .notin_() 只影响直接子句,我可能有另一个条件,例如 'like',我希望所有子句都带有 '不是'条件。
标签: python sqlalchemy orm