使用django的ORM框架按月统计近一年内的数据方法


Posted in Python onJuly 18, 2019

如下所示:

# 计算时间
time = datetime.datetime.now() - relativedelta(years=1)
# 获取近一年数据
one_year_data = Data.objects.filter(create_time__gte=time_ago)
# 分组统计每个月的数据
count_res = one_year_data\
			.annotate(year=ExtractYear('create_time'),month=ExtractMonth('create_time'))\
      .values('year', 'month').order_by('year', 'month').annotate(count=Count('id'))
print(count_res)

打印结果:

<QuerySet [{'year': 2018, 'month': 7, 'count': 3}, {'year': 2019, 'month': 5, 'count': 7}, {'year': 2019, 'month': 6, 'count': 161}]>

annotate()方法:

对数据集先进行分组然后再进行某些聚合操作或排序时,需要使用annotate方法来实现。与aggregate方法不同的是,annotate方法返回结果的不仅仅是含有统计结果的一个字典,而是包含有新增统计字段的查询集(queryset)。

以上这篇使用django的ORM框架按月统计近一年内的数据方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python常见数据结构详解
Jul 24 Python
Python回调函数用法实例详解
Jul 02 Python
Python导入模块时遇到的错误分析
Aug 30 Python
python操作mysql代码总结
Jun 01 Python
python 搭建简单的http server,可直接post文件的实例
Jan 03 Python
Python Matplotlib实现三维数据的散点图绘制
Mar 19 Python
python加载自定义词典实例
Dec 06 Python
Python实现微信好友的数据分析
Dec 16 Python
检测tensorflow是否使用gpu进行计算的方式
Feb 03 Python
使用python自动追踪你的快递(物流推送邮箱)
Mar 17 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
jupyter notebook更换皮肤主题的实现
Jan 07 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 #Python
django页面跳转问题及注意事项
Jul 18 #Python
django框架模板语言使用方法详解
Jul 18 #Python
Django中间件基础用法详解
Jul 18 #Python
Python编写通讯录通过数据库存储实现模糊查询功能
Jul 18 #Python
Django 实现图片上传和显示过程详解
Jul 18 #Python
Django框架模型简单介绍与使用分析
Jul 18 #Python
You might like
php连接mssql的一些相关经验及注意事项
2013/02/05 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
PHP遍历数组的方法汇总
2015/04/30 PHP
简单谈谈php浮点数精确运算
2016/03/10 PHP
PHP模板引擎Smarty内建函数section,sectionelse用法详解
2016/04/11 PHP
使用Entrust扩展包在laravel 中实现RBAC的功能
2020/03/16 PHP
jQuery文本框(input textare)事件绑定方法教程
2013/04/24 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
scroll事件实现监控滚动条并分页显示(zepto.js)
2016/12/18 Javascript
javascript基础知识讲解
2017/01/11 Javascript
jquery实现百叶窗效果
2017/01/12 Javascript
angular基于ng-alain定义自己的select组件示例
2018/02/23 Javascript
推荐11个实用Python库
2015/01/23 Python
在Python的Django框架中编写错误提示页面
2015/07/22 Python
读取本地json文件,解析json(实例讲解)
2017/12/06 Python
Python中支持向量机SVM的使用方法详解
2017/12/26 Python
Python编程求质数实例代码
2018/01/31 Python
Python使用一行代码获取上个月是几月
2018/08/30 Python
python将txt文档每行内容循环插入数据库的方法
2018/12/28 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
2019/01/08 Python
python实现的汉诺塔算法示例
2019/10/23 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
关于pytorch中全连接神经网络搭建两种模式详解
2020/01/14 Python
Python绘制全球疫情变化地图的实例代码
2020/04/20 Python
python实现批量命名照片
2020/06/18 Python
python+django+selenium搭建简易自动化测试
2020/08/19 Python
AmazeUI 等分网格的实现示例
2020/08/25 HTML / CSS
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
初中三年学生的学习自我评价
2013/11/13 职场文书
《草原》教学反思
2014/02/15 职场文书
大学生评语大全
2014/04/18 职场文书
python使用shell脚本创建kafka连接器
2022/04/29 Python