Django クエリセットで OR 条件を実行するにはどうすればいいですか? 質問する

Django クエリセットで OR 条件を実行するにはどうすればいいですか? 質問する

次の SQL クエリと同等の Django クエリを記述したいと思います。

SELECT * from user where income >= 5000 or income is NULL.

Django クエリセット フィルターを構築するにはどうすればよいでしょうか?

User.objects.filter(income__gte=5000, income=0)

ANDこれはフィルターなので機能しません。ORフィルターを使用して個々のクエリセットの結合を取得したいのです。

ベストアンサー1

from django.db.models import Q
User.objects.filter(Q(income__gte=5000) | Q(income__isnull=True))

ドキュメント経由

おすすめ記事