根据日期(月份和年份)筛选结果
如何根据以下查询得到结果。根据日期(月份和年份)筛选结果
这是我model.py
class Revenue_Report(models.Model):
value = models.CharField(max_length = 100)
value_name = models.CharField(max_length = 225)
tracks_id = models.ForeignKey(Tracks)
posted_date = models.DateTimeField(auto_now_add=True)
我需要得到的结果月份和年份明智
monthPillDetails=Revenue_Report.objects.values('value').filter(posted_date__year='2014',posted_date__month='09')
当我运行查询,我得到空的结果,但我在我的表有数据。
更新时间:
当我给这样的
monthPillDetails=Revenue_Report.objects.filter(posted_date__year='2014').values('value')
控制台输出为[{'value': u'12345'}, {'value': u'12345'}, {'value': u'12345'}, {'value': u'123456'}, {'value': u'12345'}]
但尝试一个月,当它返回无[]
monthPillDetails=Revenue_Report.objects.filter(posted_date__month='09').values('value')
使用,你想看看
where = "Month(posted_date)='09'"
monthPillDetails=Revenue_Report.objects.extra(where=[where])
当您打印monthPillDetails
你会得到的结果尝试。,
用途:
monthPillDetails=Revenue_Report.objects.values_list('value').filter(posted_date__year='2014')
即将到来的年份'见我的编辑',但我需要打印明智的月份。 – 2014-09-11 12:07:56
尝试它Django壳。任何错误?可能是你的时区配置不正确settings.py – 2014-09-11 12:15:27
我在django shell中检查没有错误结果是[] – 2014-09-11 12:17:21
尝试通过整一个月来过滤,不串:
filter(posted_date__month=9)
>>> monthPillDetails = Revenue_Report.objects.filter(posted_date__month = 9).values_list( '值') >>> monthPillDetails [] – 2014-09-11 12:33:44
SELECT * FROM revenue_report WHERE MONTH(posted_date)='09';当我在MySQL工作台中运行这个查询时,我会得到结果,但我需要在Django过滤器中查询 – 2014-09-11 12:34:24
Check Revenue_Report.objects.filter(posted_date__month = 9).query – power 2014-09-11 13:12:21
查询是否在没有值语句的情况下工作?如果交换数值和过滤器会怎样? – power 2014-09-11 11:56:48
monthPillDetails = Revenue_Report.objects.filter(posted_date__year ='2014')。values('value') – 2014-09-11 12:02:04
看到我更新的查询 – 2014-09-11 12:08:55