gpt4 book ai didi

python - 我可以在 Django QuerySet 中自定义复杂的分组依据吗?

转载 作者:太空宇宙 更新时间:2023-11-03 12:42:29 25 4
gpt4 key购买 nike

我需要对按日期和月份分组的特定列求和。在 SQL (postgres) 中,它看起来像这样:

select sum(amount) from somewhere group by extract(year from date), extract(month from date)

这可以表示为 Django QuerySet 吗?在我看来它不能,但我真的不想求助于普通的旧 SQL。欢迎任何其他想法。

似乎可以使用 queryset.query.group_by,但我没有任何运气 - 欢迎提供一个工作示例。

最佳答案

您可以使用 extra 方法在进行聚合之前添加年份和日期值。

Somewhere.objects.extra(select={'year': 'EXTRACT(year FROM date)',
'month': 'EXTRACT(month FROM date)'}
).values_list('year', 'month').annotate(Sum('amount'))

关于python - 我可以在 Django QuerySet 中自定义复杂的分组依据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4722605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com