Problém je v tom, že a !=b je NULL, když a nebo b je NULL.
<=>
je operátor NULL-safe se rovná. Chcete-li získat NULL-safe, který se vám nerovná, jednoduše invertujte výsledek:
SELECT *
FROM my_table
WHERE NOT column_a <=> column_b
Bez použití operátoru null safe byste museli udělat toto:
SELECT *
FROM my_table
WHERE column_a != column_b
OR (column_a IS NULL AND column_b IS NOT NULL)
OR (column_b IS NULL AND column_a IS NOT NULL)