我正在尝试在 django 中查询数据库表,其中包括以下列:
id | start_time | end_time
我可以直接在查询中获取差异,而不是获取两者的单独值吗? 一些这样的效果:
SELECT id, Diff(start_time, end_time) FROM myTable
最佳答案
这完全可以通过 Django 1.10 中的 ORM 来完成以上。使用这样的模型:
class Timer(models.Model)
start_time = models.DateTimeField()
end_time = models.DateTimeField()
您可以像这样用持续时间注释对象:
from django.db.models import DurationField, ExpressionWrapper, F
Timer.objects.annotate(duration=ExpressionWrapper(F('end_time') - F('start_time'),
output_field=DurationField()))
关于Django 选择查询时间差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5698486/