关于python:peewee-group-by-count-没有-count-字段的问题解决

q = KeywordTask.select(
    KeywordTask.track_source_id,
    fn.COUNT(KeywordTask.track_source_id)
).group_by(KeywordTask.track_source_id)

我心愿依照分组统计个数,然而遇到了一个问题,就是 count 的后果出不来,加上 dicts 也出不来

只有 track_source_id ,没有 count

怎么办?

解决方案,必须给 count 一个别名才行

q = KeywordTask.select(
    KeywordTask.track_source_id,
    fn.COUNT(KeywordTask.track_source_id).alias('count')
).group_by(KeywordTask.track_source_id)

有了别名就行了

残缺代码

from core.mysql.models import KeywordTask
from peewee import fn
from loguru import logger

q = KeywordTask.select(
    KeywordTask.track_source_id,
    fn.COUNT(KeywordTask.track_source_id).alias('count')
).group_by(KeywordTask.track_source_id)


logger.debug(str(q))

logger.debug(list(q.dicts()))

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据