【发布时间】:2021-10-30 04:41:51
【问题描述】:
简单的问题:
Model.objects.values('some_datetime_field__date',)
使用 sqlite 返回正确的日期值,但在 MySQL 5.7 中返回 Nones
模型如下:
class Inbound(models.Model):
effective_date = models.DateTimeField(null=False, blank=True)
number = models.IntegerField()
# other fields.
我使用下面的代码按日期计算数字(仅限日期,而不是日期时间)
daily_changes = Inbound.objects.all().values('effective_date__date')\
.annotate(total_change=Sum('number'))
在 sqlite3 上运行良好,但在 MYSQL 上失败
调试后是因为Inbound.objects.values('effective_date__date')在Mysql中只返回了Nones
【问题讨论】:
-
some_datetime_field__date是否存在,是否有值 -
@RiggsFolly 首先抱歉格式错误。但是这个问题非常可笑,真的让我很生气。
some_datetime_field具有正确的日期时间值,但some_datetime_field__date只返回无。它在 sqlite3 中工作正常,但在 mysql 上出错。 -
好吧,我们最好看看架构和数据内容的概念
-
要点 你原来的问题没有提到
sqlite或mysql发帖前请三思
标签: mysql django sqlite datetime