首页 > 其他分享 >17 Djaogo日期归档查询方式

17 Djaogo日期归档查询方式

时间:2022-08-18 12:12:27浏览次数:66  
标签:TruncMonth Djaogo 17 models month annotate values 归档

Django提供了一种方式:日期归档查询方式
如果以后遇到,要用某年某月分组的话,那么可以使用Django提供的方式:

# from django.db.models.functions import TruncMonth, TruncDay, TruncHour
from django.db.models.functions import TruncMonth

models.Sales.objects\
    .annotate(month=TruncMonth('timestamp'))  # 截断日期到年月,在赋值给month。使用:Sales.month
    .values("month")  #  用截断出来的年月字段,来分组
    .annotate(c=Count('id'))  # 统计id的数量
    .values('month', 'c')  # 

实例:

ret = models.Article.objects.filter(user=user_obj).annotate(month=TruncMonth("create_time")).values("month").annotate(c=Count('nid')).values_list("month", "c")  # 年月分组
print(ret)  # <QuerySet [(datetime.datetime(2022, 8, 1, 0, 0), 2)]>

标签:TruncMonth,Djaogo,17,models,month,annotate,values,归档
From: https://www.cnblogs.com/it-lkp/p/16598224.html

相关文章

  • luogu P1721 [NOI2016] 国王饮水记
    题面传送门首先我们发现,一定不会有低于\(h_1\)的参与操作的过程。然后考虑一个\(x\)与比它大的\(y<z\),则发现一定是先\((x,y)\),再\((\frac{x+y}{2},z)\)更好。因为这样......
  • 817笔记(轮播图js)
    网页轮播图步骤:鼠标经过轮播图模块,左右按钮显示,离开隐藏左右按钮点击右侧按钮一次,图片往左播放一次,以此类推,左侧按钮同理图片播放的同时,下面小圆圈模块跟随一起变化......
  • 【2022.8.17】MySQL数据库(4)
    学习内容概要操作表的SQL语句补充表查询关键字selectfromwheregroupbyhavingdistinctorderbylimitregexpSQL语句中也支持写类似......
  • 2022-08-17 第五组 罗佳明 学习笔记
    一、学习重点子查询(自连接)标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集一行多列表子查询:结果集多行多列日期格式二、学习内容......
  • 【IELTS】-2022.8.17开始
    【120】-irrelevant-不相关的,离题的--TheSellercanaskamoderatortoremoveanyirrelevantcommentsfromtheirthread.卖家也可以要求管理员删去任何离题的评语......
  • 22/8/17深入理解计算机系统第七章笔记
    7.13库打桩机制库打桩:允许截获对共享库的调用,转而执行自己的代码。使用这个机制可以追踪某个特殊库函数的调用次数,验证和追踪它的输入和输出值,或者替换它。需要创建一个......
  • 8.17
    CF1718A题意:给定一个序列,每次可以花费\(\lceil\frac{r-l+1}{2}\rceil\)的代价选择一段区间\([l,r]\),并把区间里的每个数字异或上\(x\),最少花费多少代价可以让整个序列变......
  • 20220817 第一组 于芮 mysql数据库查询(第三十四天)
     小白成长记——第三十四天   今天主要学习了mysql数据库的查询语句,对于一个合格的程序猿来说,掌握数据库的查询语句是非常重要的,所以今天不仅学习了理论知识,还作了......
  • 2022-8-17数据库查询联系
    DQL查询语言子查询按照结果集的行列数不同,子查询可以分为以下几类:标量子查询:结果集只有一行一列(单行子查询)列子查询:结果集有一列多行行子查询:结果集有一行多列......
  • Codeforces 1713C - Build Permutation
    题意为给出一个长度为n的空数组,数组下标为0至n-1。我们需要在数组中的每个位置上填上合适的数A[i],使得i+A[i]为完全平方数。并且数组最后需为0至n-1的一个排列。......