【问题标题】:Sql-Alchemy group by and filter by a list of idsSql-Alchemy 按 id 列表分组和过滤
【发布时间】:2020-04-15 23:46:39
【问题描述】:

我在 mysql 数据库中有一个列表表和一个条目表。 每个列表都有一个或多个条目,我正在尝试获取属于列表 id 列表的所有不同条目的列表,并通过对得分值求和来对它们进行分组。

id_list = "a list of Listing ids"

entries = db.session.query(Entry.entry, sum(Entry.score)).filter(Entry.listing_id.in_(id_list)).group_by(Entry.entry).all()

但是当我在 Flask 中运行上述查询时出现此错误:

NotImplementedError: Operator 'getitem' is not supported on this expression

我已经尝试过谷歌,但我没有找到任何与我的特定案例相关的信息,任何想法我做错了什么

【问题讨论】:

  • 您对sum 的使用看起来很可疑。你试过from sqlalchemy import func然后entries = db.session.query(Entry.entry, func.sum(Entry.score))...吗?
  • 就是这样!谢谢!
  • 如果你把它写成答案,我会接受它!

标签: mysql sql flask flask-sqlalchemy


【解决方案1】:

正如我在评论中提到的,问题出在sum

尝试from sqlalchemy import func 然后 entries = db.session.query(Entry.entry, func.sum(Entry.score))...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 2012-09-06
    • 2012-11-20
    • 2022-12-17
    • 2022-12-06
    • 1970-01-01
    相关资源
    最近更新 更多