понедельник, 13 июля 2009 г.

GROUP BY DJANGO

Пример группировки в Django:
Есть
Таблица User (Пользователи), UserTest (Тесты), TestResult (Возможные результаты теста), UserHasTestResult (Все результаты пользователя),
получаем все тесты, которые прошел пользователь + время, когда пользователь проходил этот тест последний раз (added из таблицы userhasttestresult)
user_tests = UserTest.objects.filter(testresult__in=test_results).annotate(added=Max('testresult__userhastestresult__added'))

- это есть по сути группировка (group by) результатов пользователя по тестам с выводом последней даты прохождения пользователем этих тестов
Подробнее здесь http://docs.djangoproject.com/en/dev/topics/db/aggregation/

Комментариев нет:

Отправить комментарий