coalesce()
を使用できます 、not null
である最初の引数を返します 。
if coalesce(old.a,'') <> coalesce(new.a,'') or
coalesce(old.b,'') <> coalesce(new.b,'') or
coalesce(old.c,'') <> coalesce(new.c,'')
then
insert ...;
end if;
2番目の引数を選択するのは難しい場合があります。上記の例は、a、b、cが文字列であり、空の文字列値がnull
と同等である場合の一般的なケースで機能します。 値。