Mysql
 sql >> Database >  >> RDS >> Mysql

Differenza tra IS NOT NULL e NOT (field =NULL) in queste 2 query

I NULL sono un po' strani. Un NULL è mai uguale a qualsiasi cosa incluso un altro NULL. Inoltre, qualsiasi operazione booleana su un NULL restituisce NULL.

L'espressione end IS NOT NULL valuterà false se end è NULL e true se end non è NULL.

L'espressione NOT( end=NULL) in realtà valuterà sempre NULL perché (end = NULL) è uguale a NULL e NOT (NULL) è anche uguale a NULL. Più precisamente in una clausola WHERE, mai valuta true .