Heim >Datenbank >MySQL-Tutorial >Wie wähle ich Zeilen mit doppelten Feldwerten in Django aus?
Zeilen mit doppelten Feldwerten in Django auswählen
Zum Auswählen aller Zeilen aus einem Modell, die mindestens einen doppelten Wert für ein bestimmtes Feld haben können Sie eine Kombination aus Djangos Aggregation und Filterung verwenden Funktionen:
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])
Alternative SQL-Lösung:
Bei Bedarf können Sie auch eine Unterabfrage verwenden, um das gleiche Ergebnis zu erzielen:
SELECT * FROM literal WHERE name IN ( SELECT name FROM literal GROUP BY name HAVING COUNT(*) > 1 );
Das obige ist der detaillierte Inhalt vonWie wähle ich Zeilen mit doppelten Feldwerten in Django aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!