1、聚合中去重(聚合函数中添加参数distinct=True)
goods_pay_rank = Pay.objects.filter(
pay_time__range=[start_time, end_time]).values(
'order__order_details__goods_attribute__goods').annotate(
count=Count('uuid', distinct=True),
goods=F('order__order_details__goods_attribute__goods'
)).values('goods', 'count').order_by('-count')
2、查询集去重
ordered_objs = GoodsAttribute.objects.filter(
goods__uuid=obj.uuid).distinct().order_by('create_time')
本文介绍了两种在数据库查询中实现去重的方法:一种是在聚合函数中使用distinct参数,另一种是在查询集中直接应用distinct方法。这两种方法对于提高数据查询的准确性和效率非常有用。
3354

被折叠的 条评论
为什么被折叠?



