PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Postgre SQL ignora a condição de filtragem se o valor for nulo


Você pode manter os argumentos como dict e enviar para o método filter() apenas aqueles que não são iguais a None:
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)