Não. O uso de
COALESCE()
geralmente impede que os índices sejam usados. A sintaxe equivalente usando lógica booleana fica complicada. A melhor solução é usar
IS DISTINCT FROM
:where field1 is distinct from field2
Ao usar operadores integrados, há uma mudança melhor para que o Postgres possa otimizar a consulta.
IS DISTINCT FROM
é a sintaxe padrão ANSI que é explicada na documentação
.