django 按时间筛选,今年,去年,上月

today = datetime.datetime.now()
1 Current year

Order.objects.filter(created_at__year=today.year)
2 Current month

Order.objects.filter(created_at__year=today.year, created_at__month=today.month)
3 Last month

last_month = today.month - 1 if today.month>1 else 12
last_month_year = today.year if today.month > last_month else today.year - 1

Order.objects.filter(created_at__year=last_month_year, created_at__month=last_month)
4 Last year

last_year = today.year - 1
Order.objects.filter(created_at__year=last_year)
5 Single Query

As last year + current year includes last month and current month, and all orders>= last_year includes current year, the query is super simple:

Order.objects.filter(created_at__year__gte=last_year)

from:[https://stackoverflow.com/questions/28101480/how-can-i-query-for-objects-in-current-year-current-month-in-django]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值