Последний запрос занимает примерно 1/3 времени первого в моем тесте.
Использование модели с 11 695 записями.
class TimeZip(models.Model):
zipcode = models.SlugField(max_length=5)
timezone = models.IntegerField(default=-5)
state = models.CharField(max_length=2)
city = models.CharField(max_length=50)
и затем тестирование:
Timer("TimeZip.objects.filter(state__iexact='xx')\
.filter(city__iexact='somewhere')\
.filter(timezone__iexact='est')",
"from shows.models import TimeZip"
).timeit(1000)
привело к времени 1.2074651718139648 секунд, в то время как
Timer("TimeZip.objects.filter(state__iexact='xx',
city__iexact='somewhere',
timezone__iexact='est')",
"from shows.models import TimeZip"
).timeit(1000)
привело к времени 0,4363691806793213 секунд.
Довольно существенная разница!