【问题标题】:How to query " WHERE call.tags ? '1' " in sqlalchemy? [duplicate]如何在 sqlalchemy 中查询“WHERE call.tags?'1'”? [复制]
【发布时间】:2020-06-11 15:15:08
【问题描述】:

我在 postgres 中有 JSONB 归档标签,里面有列表。

e=# SELECT tags FROM call WHERE call.tags ? '1';
    tags
------------
 ["1", "2"]
 ["1"]
(2 rows)

(对于这个查询,我在 postgres 中有索引)。

如何在sqlalchemy中表达相同的过滤条件?

【问题讨论】:

    标签: python json postgresql sqlalchemy


    【解决方案1】:

    我可以在过滤器中使用原始 sql

    from sqlalchemy import text
    
    db.session.query(Call).filter(text("tags ? '1'")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-06
      • 2020-12-06
      • 1970-01-01
      • 2019-12-09
      • 2010-10-05
      • 1970-01-01
      相关资源
      最近更新 更多