Python 查询设置为组的最大值
我想选择具有最大值的行,按行\u nm对它们进行分组,并获取此行的字段 在My models.py中,我有以下字段:Python 查询设置为组的最大值,python,mysql,django,django-models,django-views,Python,Mysql,Django,Django Models,Django Views,我想选择具有最大值的行,按行\u nm对它们进行分组,并获取此行的字段 在My models.py中,我有以下字段: class SmdDropRateCe(models.Model): sumr_ymd = models.DateField(blank=True, null=True) line_nm = models.CharField(max_length=20, blank=True, null=True) shift_code = models.CharFiel
class SmdDropRateCe(models.Model):
sumr_ymd = models.DateField(blank=True, null=True)
line_nm = models.CharField(max_length=20, blank=True, null=True)
shift_code = models.CharField(max_length=10, blank=True, null=True)
model_code = models.CharField(max_length=30, blank=True, null=True)
equip_id = models.CharField(max_length=30, blank=True, null=True)
mat_code = models.CharField(max_length=30, blank=True, null=True)
reel_no = models.CharField(max_length=10, blank=True, null=True)
err_num = models.IntegerField(blank=True, null=True)
pckp_num = models.IntegerField(blank=True, null=True)
plac_num = models.IntegerField(blank=True, null=True)
err_ppm = models.FloatField(blank=True, null=True)
然后我想按模型代码分组,并使用max err\u ppm字段从行中恢复数据
示例:恢复字段:行\u nm、设备\u id、卷盘\u无错误\u ppm
我尝试了以下方法:
dropWorst1 = dropToday.values('line_nm').annotate(worst1=Max('err_ppm')).order_by('line_nm')
但是,它只返回以下字段:line_nm,worst1
我还尝试:
dropWorst1 = dropToday.order_by('-err_ppm','line_nm').distinct('line_nm')
但它返回错误:
此数据库后端不支持在字段上使用DISTINCT
因为我正在使用mysql
有人知道如何解决这个问题,我已经在寻找许多不同的解决方案,但没有成功。
提前交货