mysql - 当我的 MySQL 字段也有小时/分钟/秒时,有什么方法可以使用 Django.models 按日期计算 "group by"吗?

标签 mysql django or-mapper

我想使用 Django.models 查询 MySQL,但由于我将 created_at(日期时间字段)与 datetime.datetime.now() 放在一起,似乎很难对每个日期进行“分组”。我做了这样的查询:

start = time.strptime("2012/6/25","%Y/%m/%d")
end = time.strptime("2012/6/26","%Y/%m/%d")
unix_start= time.mktime(start)
unix_end = time.mktime(end)

Mymodels.objects.filter(created_at__range[datetime.datetime.fromtimestamp(unix_start),datetime.datetime.fromtimestamp(unix_end]).values("~~~~~").annotate(player_id=Count("player_id"))

但我猜这个查询对于网络来说太繁重了。当我的 MySQL 数据是 datetime.datetime.now 时,有什么方法可以按 datetime.date “分组依据”或在 Django.models 中使用(date() for MySQL) ()?

最佳答案

当日期保存为 Datetime 时,我使用 PostgreSQL date_trunc() 按日期对值进行分组。我认为您可以在 MySQL 中使用类似这样的东西:

select_date = {"date": """DATE_FORMAT(start, '%Y-%m-%d')"""}
query = query.extra(select=select_date).values('date')
query = query.annotate(player_id=Count('player_id', distinct=True)).order_by('date')

关于mysql - 当我的 MySQL 字段也有小时/分钟/秒时,有什么方法可以使用 Django.models 按日期计算 "group by"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11255833/

相关文章:

MySQL Workbench - 连接到本地主机

mysql - 与 PostgreSQL 相比,为什么 Mysql 不需要真空?

python - 如何导入名称不明确的特定模块?

django - 我可以将 Socket.IO 与 Django 一起使用吗?

python - django 将额外的参数传递给filterset_class

java - 如何处理java.io.InvalidClassException?

java - java中如何接受null JTextField?

mysql - Wordnet SQL 设置