#导入模块
from django.db.models import Avg
from django.db.models import Max
from django.db.models import FloatField
from django.db.models import Count
from django.db.models import Sum
#django 聚合函数
#计算总和 .count()
datatime_log.objects.count()
datatime_log.objects.filter(userid_id="1").count()
#聚合函数汇总
#Avg() 返回给定表达式的平均值
datatime_log.objects.aggregate(Avg('dosage'))
datatime_log.objects.aggregate(allavg = Avg('dosage')) #指定字典名称
datatime_log.objects.aggregate(allavg = Avg('dosage'),max=Max("dosage")) #多聚合
#Count() 返回相关的对象数
#Max() 返回最大值
#Min() 返回最小值
#StdDev() 返回提供的表达式中数据的标准偏差
#Sum() 计算给定表达式的所有值的总和
datatime_log.objects.filter(userid = "1").aggregate(Sum('unit')) #根据条件执行
#Variance() 返回提供的表达式中数据的方差
#mysql
#datetime字段查询 同日期下记录总数
select count(distinct date_format(datetime, '%Y-%m-%d %H')) from treatment_record_datatime_log where userid_id = '1' ;
#datetime字段查询 同日
django - 聚合查询和时间折叠
最新推荐文章于 2022-10-12 11:28:52 发布