首页 > 解决方案 > SQLAlchemy,如何按空数组列过滤?

问题描述

我在 SQLAlchemy 中有这种模型:

class MyModel(Base):
    __tablename__ = 'my_models'
    name = Column(String(255), nullable=False)
    company_ids = Column(ARRAY(Integer), nullable=True)

我故意创建了带有空数组的模型并尝试像这样查询它们:

db.query(MyModel).filter(~MyModel.company_ids.any())

这不会返回任何东西。

是否可以过滤具有空数组字段的模型?

============更新================

我可以使用这种方法查询它:

db.query(MyModel).filter(MyModel.company_ids == '{}')

但是我认为这只是 PostgreSQL 特定的答案

标签: pythonsqlalchemy

解决方案


我可以使用这种方法查询它:

db.query(MyModel).filter(MyModel.company_ids == '{}')

但是我认为这只是 PostgreSQL 特定的答案


推荐阅读