Каков наиболее эффективный способ проверки пустого набора запросов в Django?

Я слышал предложения использовать следующее:

if qs.exists():
    ...

if qs.count():
    ...

try:
    qs[0]
except IndexError:
    ...

Скопировано из комментария ниже: «Я ищу для оператора типа «В MySQL и PostgreSQL count () быстрее для коротких запросов, exists () быстрее для длинных запросов и используйте QuerySet [0], когда вероятно, что вам понадобится первый элемент, и вы хотите проверьте, что он существует. Однако, когда count () работает быстрее, он лишь ненамного быстрее, поэтому рекомендуется всегда использовать exists () при выборе между двумя. "

16
задан Sam Odio 3 August 2011 в 07:41
поделиться