SQLServer ottiene risultati dove il valore è null
-
09-06-2019 - |
Domanda
Ho un database del server SQL su cui sto interrogando e desidero ottenere le informazioni solo quando una riga specifica è nulla.Ho usato un'istruzione where come:
WHERE database.foobar = NULL
e non restituisce nulla.Tuttavia, so che esiste almeno un risultato perché ho creato un'istanza nel database in cui "foobar" è uguale a null.Se estraggo l'istruzione where mostra i dati, quindi so che non è il resto della query.
Qualcuno mi può aiutare?
Soluzione
La sintassi corretta è WHERE database.foobar IS NULL.Vedere http://msdn.microsoft.com/en-us/library/ms188795.aspx per maggiori informazioni
Altri suggerimenti
Il confronto con NULL sarà falso ogni volta.Vuoi invece usare IS NULL.
x = NULL -- always false
x <> NULL -- always false
x IS NULL -- these do what you want
x IS NOT NULL
Leggere Test per valori nulli, è necessario IS NULL e non = NULL
È un database SQL Server?Se è così, usa IS NULL
invece di fare il confronto (MSDN).