我需要找到在中创建的所有对象
1. current year
2. current month
3. last month
4. last year
我是这样想的
this_year = datetime.now().year
last_year = datetime.now().year -1
this_month = datetime.now().month
last month = (datetime.today() - timedelta(days=30)).month
使用like
Order.objects.filter(created_at__month=this_month)
问题是
如果您希望在单独的查询中使用它,请执行类似的操作。
注意:在我的例子中,我把'06'放在六月,但是你可以改变它。
我不认为你可以只匹配日期字段的“月”或“年”部分,而不做一些重要的修改或注释。最有可能的是,您最简单的解决方案是定义所需范围的开始和结束,并根据该范围进行搜索。这可能需要一点工作。
例如,上个日历月是:
GTE和LTE是“大于或等于”和“小于或等于”。同样值得注意的是,我们使用timedelta来计算本月1日的前一天是什么,而不是查看前一个月是28天、29天、30天还是31天的所有不同情况。
1本年
2本月
上个月3日
去年4次
5单一查询
由于去年+本年包括上月和本月,并且所有订单都包含上一年,因此查询非常简单:
相关问题 更多 >
编程相关推荐