Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memilih Baris dengan Nilai Medan Pendua dalam Django?
Memilih Baris dengan Nilai Medan Pendua dalam Django
Untuk memilih semua baris daripada model yang mempunyai sekurang-kurangnya satu nilai pendua untuk medan tertentu , anda boleh menggunakan gabungan pengagregatan dan penapisan Django keupayaan:
from django.db.models import Count dupes = Literal.objects.values('name').annotate(id_count=Count('id'))
dupes = dupes.filter(id_count__gt=1)
dupes = Literal.objects.filter(name__in=[item['name'] for item in dupes])
SQL Alternatif Penyelesaian:
Jika mahu, anda juga boleh menggunakan subkueri untuk mencapai hasil yang sama:
SELECT * FROM literal WHERE name IN ( SELECT name FROM literal GROUP BY name HAVING COUNT(*) > 1 );
Atas ialah kandungan terperinci Bagaimana untuk Memilih Baris dengan Nilai Medan Pendua dalam Django?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!