sql >> Base de Datos >  >> RDS >> Mysql

Diferencia entre NO ES NULO y NO (campo =NULO) en estas 2 consultas

Los NULL son un poco extraños. Un NULL es nunca igual a cualquier cosa incluyendo otro NULL. Además, cualquier operación booleana contra NULL devuelve NULL.

La expresión end IS NOT NULL evaluará false si end es NULL y true si end no es NULL.

La expresión NOT( end=NULL) en realidad siempre se evaluará como NULL porque (end = NULL) es igual a NULL y NOT (NULL) también es igual a NULL. Más concretamente en una cláusula WHERE, nunca evaluar true .