首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sqlmodel:用null过滤

sqlmodel:用null过滤
EN

Stack Overflow用户
提问于 2022-06-25 13:31:17
回答 1查看 257关注 0票数 0

参考这里的过滤示例:https://sqlmodel.tiangolo.com/tutorial/where/#filter-rows-using-where-with-sqlmodel,如何获取年龄为null的所有英雄。

我需要相当于:

代码语言:javascript
复制
select * from hero where age is null

这样做是可行的:

代码语言:javascript
复制
select(Hero).where(Hero.age != None)

但是,IDE抱怨PEP 8: E711 comparison to None should be 'if cond is not None:'

所以我把它改成:

代码语言:javascript
复制
select(Hero).where(Hero.age is None)

但是,它不像预期的那样工作,导致生成不正确的SQL:

代码语言:javascript
复制
SELECT * FROM hero WHERE 0 = 1

什么是正确的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-25 13:35:03

代码语言:javascript
复制
from sqlalchemy.sql.operators import is_


stmt = select(Hero).where(is_(Hero.age, None))
result = session.exec(stmt)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72754269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档