Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Manipulação de NULL no MySQL após o gatilho de atualização que é acionado apenas na alteração de dados


Você pode usar coalesce() , que retorna o primeiro de seus argumentos que é 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;

Pode ser complicado escolher o segundo argumento. O exemplo acima funciona para o caso comum quando a, b e c são strings e quando um valor de string vazio é equivalente a um null valor.