Код: Выделить всё
from django.db import connection, reset_queries
Код: Выделить всё
reset_queries()
p = XModel.objects.filter(id=id) \
.values('name') \
.annotate(quantity=Count('p_id'))\
.order_by('-quantity') \
.distinct()[:int(count)]
print(connection.queries)
Код: Выделить всё
reset_queries()
tc = ZModel.objects\
.filter(id=id, stock__gt=0) \
.aggregate(Sum('price'))
print(connection.queries)

Я изменил имена полей, чтобы упростить задачу. (Поля представляют собой родительские таблицы, т. е. __ на нескольких уровнях)
Я пытался распечатать запросы MySQL, которые делает Django, и наткнулся на Connection.queries, я мне было интересно, почему с первого раза он не печатает пусто, а со вторым работает нормально. Хотя я получаю результат, которого ожидаю. Вероятно запрос выполнен. Также я выполняю только по одному.
Подробнее здесь: https://stackoverflow.com/questions/515 ... -in-django