Bagaimana untuk Mencapai Kumpulan Melalui Pertanyaan dalam Django?
Dalam Django, untuk melaksanakan kumpulan dengan pertanyaan pada model, seseorang boleh menggunakan ciri pengagregatan ORM. Ini dicapai dengan menggunakan kaedah values() dan annotate().
Pertimbangkan contoh berikut:
from django.db.models import Count result = (Members.objects .values('designation') .annotate(dcount=Count('designation')) .order_by() )
Kod ini diterjemahkan kepada pertanyaan SQL yang serupa dengan:
SELECT designation, COUNT(designation) AS dcount FROM members GROUP BY designation
Hasil pertanyaan akan menjadi senarai objek kamus, setiap satu mewakili kumpulan. Contohnya:
[{'designation': 'Salesman', 'dcount': 2}, {'designation': 'Manager', 'dcount': 2}]
Untuk memasukkan berbilang medan dalam hasil carian, cuma tambahkannya sebagai argumen kepada values():
.values('designation', 'first_name', 'last_name')
Rujukan:
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan GROUP BY Queries dalam Django?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!