我的Django-foo在将某些原始sql转换为ORM方面并不完全可以。
目前我正在执行:
SELECT avg(<value_to_be_averaged>), <id_to group_on>
FROM <table_name>
WHERE start_time >= <timestamp>
GROUP BY <id_to group_on>;
在Django,我可以做到:
Model.objects.filter(start_time__gte=<timestamp>).aggregate(Avg('<value_to_be_averaged>'))
但是这适用于查询中的所有对象,并且不会像上面的原始SQL中那样返回按ID分组的查询集。我一直在摆弄.annotate(),但没有取得多大进展。任何帮助将不胜感激!