ホームページ >データベース >mysql チュートリアル >Django で重複したフィールド値を持つ行を選択する方法は?
Django で重複フィールド値を持つ行を選択する
特定のフィールドに少なくとも 1 つの重複値を持つモデルからすべての行を選択するには、Django の集計とフィルタリングを組み合わせて使用できます。機能:
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解決策:
必要に応じて、サブクエリを使用して同じ結果を達成することもできます:
SELECT * FROM literal WHERE name IN ( SELECT name FROM literal GROUP BY name HAVING COUNT(*) > 1 );
以上がDjango で重複したフィールド値を持つ行を選択する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。