0
之间最快的请求。如果我有:Django的查询和子查询
class Record(models.Model):
start_time = models.Integerfield() Timestamp
并在View我想遍历开始日期和结束日期之间的天数。
它更快做:
records = Record.objects.filter(
start_time__gte=dt.datetime.timestamp(start_date),
start_time__lt=dt.datetime.timestamp(end_date)
)
for start_day, stop_day in days_between_start_and_end_date:
records_week = records.filter(
start_time__gte=dt.datetime.timestamp(start_day),
start_time__lt=dt.datetime.timestamp(stop_day)
)
或直接
for start_day, stop_day in days_between_start_and_end_date:
records_week = Record.objects.filter(
start_time__gte=dt.datetime.timestamp(start_day),
start_time__lt=dt.datetime.timestamp(stop_day)
)
其实我想,可能看不出任何区别,但我不明白为什么,因为对我来说,我做的第一种情况是一个大的要求,第二种情况是很多小的要求。任何想法为什么?
请记住,查询集是懒惰的。这些示例都不执行任何查询。 – knbk