Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Operatore non uguale <> !=su NULL

<> è SQL-92 standard; != è il suo equivalente. Entrambi valutano i valori, che NULL non è -- NULL è un segnaposto per dire che c'è l'assenza di un valore.

Ecco perché puoi usare solo IS NULL /IS NOT NULL come predicati per tali situazioni.

Questo comportamento non è specifico di SQL Server. Tutti i dialetti SQL conformi agli standard funzionano allo stesso modo.

Nota :per confrontare se il tuo valore non è null , usi IS NOT NULL , mentre da confrontare con non null valore, utilizzi <> 'YOUR_VALUE' . Non posso dire se il mio valore è uguale o meno a NULL, ma posso dire se il mio valore è NULL o NOT NULL. Posso confrontare se il mio valore è qualcosa di diverso da NULL.