尊敬的StackOverFlow社区:GROUP BY在Django查询
我需要你的帮助来执行下面的SQL查询。
select DATE(creation_date), COUNT(creation_date) from blog_article WHERE creation_date BETWEEN SYSDATE() - INTERVAL 30 DAY AND SYSDATE() GROUP BY DATE(creation_date) AND author="scott_tiger";
这里是我的Django模型
class Article(models.Model):
title = models.CharField(...)
author = models.CharField(...)
creation_date = models.DateField(...)
我怎么能形成上述的Django使用查询汇总()和注释()函数。我创造了这样的事情 -
now = datetime.datetime.now()
date_diff = datetime.datetime.now() + datetime.timedelta(-30)
records = Article.objects.values('creation_date', Count('creation_date')).aggregate(Count('creation_date')).filter(author='scott_tiger', created_at__gt=date_diff, created_at__lte=now)
当我运行此查询它给了我下面的错误 -
'Count' object has no attribute 'split'
任何想法谁使用它?
你为什么要做* Count('creation_date')*? SQL计数并不适用于结果集中的列。 – McGarnagle
但它可以,也许更明确地指出作者想要计算的东西。 – Paragon