UPDATE でサブクエリを使用しています。
UPDATE tableA
SET x,y,z = ( (SELECT x, y, z
FROM tableB b
WHERE tableA.id = b.id
AND (tableA.x != b.x
OR tableA.y != b.y
OR tableA.z != b.z))) );
私の質問は、サブクエリが行を返さない場合はどうなりますか? nullで更新しますか?
第二に、これを書くためのより良い方法はありますか。基本的に、tableB から tableA の 3 つのフィールドを更新していますが、3 つのフィールドのいずれかが異なる場合にのみ更新が行われます。