Fオブジェクトを使用してDjangoモデルにクエリを実行しようとしましたが、目的の結果が得られませんでした。 クエリは次のとおりです。としてORMによってSQLに翻訳されDjangoのFオブジェクトとの比較クエリの追加null以外のチェックの追加
Ticket.objects.exclude(lead__email=F('email')).count()
:
SELECT count(*) FROM "core_ticket" LEFT OUTER JOIN "core_lead" ON ("core_ticket"."lead_id" = "core_lead"."id") WHERE NOT ("core_lead"."email" = ("core_ticket"."email") AND "core_lead"."email" IS NOT NULL)
私の問題は、ORMは、where句でこのAND "core_lead"."email" IS NOT NULL
を追加することです。電子メールフィールドにnull値が存在する可能性があるため、結果に影響しています。
この特別なヌルチェックを避ける方法はありますか?