zoukankan      html  css  js  c++  java
  • django orm 查询一个月内每天的数据

    查询一个月内每天的查询人数

    from django.db.models import Count

    data = ApplicationForm.objects.filter(create_time__year=year, create_time__month=month).extra( select= {'create_time': "TO_CHAR(create_time, 'YYYY-MM-DD')", "interview_date": "TO_CHAR(interview_date, 'YYYY-MM-DD HH:MM:SS')"}).values('create_time', 'application_status', 'interview_date').annotate( total_invite_len=Count('create_time')).values('create_time', 'application_status','name', 'interview_date')

    # create_time__year, create_time__month, 表示between and 在这年这月范围内的数据
    # extra()在orm 里面提交sql语句 TO_CHAR()格式化时间
    # 第一个values 是用来分组 按照每天的日期,和该天的申请状态 ,面试日期分组
    # annotatle 是为了配合聚合函数 Count()使用统计处每天申请的条数
    # 第二个 values 是为了拿到分组后的数据

    查询前30天的需要查询的人数

    before_month = get_date(30)

    invite = InvitationJobInterviewForm.objects.filter(create_time__gte=before_month).extra( select={'create_time': "TO_CHAR(create_time, 'YYYY-MM-DD')"}).values('create_time').annotate( total_invite_len=Count('create_time'), count_email_invite=Count('invite_people_code')).values( 'create_time', 'total_invite_len', 'count_email_invite')
    def get_date(days):
    date = (datetime.datetime.today() - datetime.timedelta(days=days)).strftime("%Y-%m-%d")
    return date
  • 相关阅读:
    centos7 安装svn, 同时支持 svn 和 http访问
    Maven单独构建多模块项目中的单个模块
    openfalcon agent 监控数据
    kubernetes 垃圾回收机制
    docker tomcat 已主机名为日志输出路径
    k8s mongodb 集群配置
    修改Centos7的网卡ens32 改为eth0
    jenkins发版脚本更新
    Git系列七之备份迁移 升级 恢复管理
    confluence wiki搭建使用
  • 原文地址:https://www.cnblogs.com/tangda/p/12595745.html
Copyright © 2011-2022 走看看