17、Django-聚合查询-原生sql语句操作raw()
聚合查询:整表聚合和分组聚合
1、整表聚合
-- 不带分组的聚合查询是指:将全部数据进行集中统计查询 -- 需要导入: -- from django.db.models import * -- 聚合函数:Sum,Avg,Count,Max,Min -- 语法: -- <model_name>.objects.aggregate(结果变量名=聚合函数('字段名')) --结果变量名 相当于 as 别名 -- 返回:结果变量名和值组成的字典 -- {"结果变量名": 值}
2、分组聚合
分组聚合:指通过计算查询结果中每一个对象所关联的对象集合、从而得出总计值(也可以是平均值或总和)、即为查询集的每一项生成聚合 -- 语法: -- QuerySet.annotate(结果变量名=聚合函数('字段名') ) -- 返回:QuerySet对象 如: -- 先查:bs = Book.objects.values('pub') -- 再分组:bs.annotate(res=Count('id')) --统计
原生数据库操作-只能做查询
使用游标:cursor
本文作者:little小新
本文链接:https://www.cnblogs.com/littlecc/p/18178389
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步