PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Postgre SQL ignoriert die Filterbedingung, wenn der Wert null ist

Sie können Argumente als dict behalten und nur diejenigen an die Methode filter() senden, die nicht gleich None sind:

arguments = {"A_name": A, "B_name": B, "C_name": C}
arguments_without_null = {k: v for k, v in arguments.items() if v is not None}
queryset = User.objects.values().filter(**arguments_without_null)