print(str(high_margin.query))
このようにして、queryset
を取得できます。 ここで回答してください。
したがって、expiry_date
を追加するだけで、期待されるSQLクエリを取得できました。 values
で 、 docs <で指定されているように、名前、有効期限でグループを生成します。 / a> 。
コードは次のように変更されます:
high_margin = StoreInvoiceBreakup.objects \
.filter(store_invoice__store_id=store_id) \
.values('product_name', 'expiry_date') \
.annotate(gross_margin_sum=Sum('gross_margin')) \
.order_by('gross_margin_sum') \
.distinct()[:int(sell_range)]
*実際に正しいかどうかわからない