Het probleem is met NULL-vergelijking. Als a.field1 of b.field3 NULL is, moet u de instructie IS NULL of IS NOT NULL gebruiken. U kunt een standaardwaarde gebruiken voor a.field1 en b.field3 met de ISNULL-functie.
ISNULL(a.field1,0) <> ISNULL(b.field3,0)
in dit geval is er een vergelijking met de waarde 0.
SELECT IIF(NULL=NULL,'true','false') -- Het resultaat is onwaar. Geweldig!