問題は、aまたはbのいずれかがNULLの場合、a!=bがNULLになることです。
<=>
>
NULLセーフの等号演算子です。等しくないNULLセーフを取得するには、結果を単純に反転します。
SELECT *
FROM my_table
WHERE NOT column_a <=> column_b
nullセーフ演算子を使用しない場合は、次のことを行う必要があります。
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)