将 sqlalchemy 与 postgresql 结合使用时,我有以下表格和数据:
id | data
----+----------
1 | {}
2 | {"a": 1}
(2 rows)
如何找到没有键的行。例如“a”还是数据[“a”]?
Give me all objects that does not have the key a.
id | data
----+----------
1 | {}
(1 row)
self.session.query(Json_test).filter(???)
最佳答案
如果列类型是 jsonb
你可以使用 has_key
:
session.query(Json_test).filter(sqlalchemy.not_(Json_test.data.has_key('a')))
对于 json
和 jsonb
类型,这应该有效:
session.query(Json_test).filter(Json_test.data.op('->')('a')==None)
关于python - 没有特定键的sqlalchemy JSON查询行(键存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39928463/