Как сгруппировать один столбец таблицы django на основе другого столбца

У меня есть таблица, как показано ниже:

id    |    type   |    code
-------------------------------------

0.        5             2
1         6             6
2         8            16
3         4            11
4         5             4
5         2             2
6         4             1
7         10            6
8         9             2

Все, что мне нужно вывести, это список groupby по кодам, как здесь:

{ '2': [5,2,9], '6': [6, 10], '16': [8], '11':[4], ...}

Я сделал этот запрос, но он не выполняет правильный запрос:

type_codes = [{ppd['code']:ppd['type_id']} for ppd in \
                    MyClass.objects \
                    .values('code', 'type_id')
                    .order_by()
               ]

Любая помощь будет принята с благодарностью

Вы можете попробовать следующее, итерируя результат запроса (используя values_list):

data = MyClass.objects..values_list('code', 'type_id')
res = {}
for code, type in data:
    res[code] = [type] if code not in res.keys() else res[code] + [type]
Вернуться на верх