ANSI Standard SQL ci fornisce la funzione ISNULL per sostituire tutti i valori null con un valore di sostituzione specifico.
Sebbene la funzione sia definita come parte di ANSI SQL, alcuni database come PostgreSQL non l'hanno adottata completamente. Tuttavia, è possibile utilizzare la funzione Coalesce () per ottenere la stessa funzionalità.
Sintassi della funzione
Possiamo esprimere la sintassi della funzione isNull come mostrato di seguito:
Isnull (espressione, sostituzione)L'espressione si riferisce a qualsiasi espressione che può essere controllata per i valori null.
La sostituzione si riferisce al valore da restituire se l'espressione è null.
Tieni presente che il tipo di parametro di sostituzione deve essere convertibile nel tipo di parametro di espressione.
Questo perché la funzione eseguirà un cast implicito dei tipi a quello del parametro di espressione.
Se l'espressione valuta su NULL, la funzione restituirà il valore di sostituzione; Altrimenti, restituisce il valore dell'espressione.
Esempio 1
Considera l'esempio seguente che utilizza la funzione isNull con un tipo numerico:
SELEZIONAREPoiché l'espressione nell'esempio sopra è nullo, la funzione restituirà il valore di sostituzione di 0.
Puoi anche eseguire lo stesso su un valore non nullo come mostrato:
SELEZIONAREPoiché l'espressione non è nulla, la funzione restituirà il valore dell'espressione.
Utilizzando ISNULL in PostgreSQL
Noterai che PostgreSQL non ha la funzione ISNULL. Tuttavia, possiamo usare la funzione coalesce () come sostituzione.
La sintassi della funzione è come mostrata:
Coalesce (espressione, sostituzione)Possiamo eseguire un esempio come mostrato:
Seleziona Coalesce (null, 0);Questo dovrebbe restituire 0 come mostrato:
Lo stesso caso si applica a una funzione non null come mostrato:
SELEZIONARELa query sopra dovrebbe restituire il valore dell'espressione come mostrato:
Ifnull - BigQuery
In database come BigQuery, la funzione isNull viene rinominata su ifnull. La funzionalità è la stessa della funzione isNull.
La sintassi è come mostrata:
Ifnull (expr, sostituzione);Esempio di utilizzo:
Seleziona ifnull (null, 0) come risultatoQuanto sopra dovrebbe tornare:
+--------+Conclusione
Usando questa guida, hai capito come utilizzare la funzione isNull in SQL standard. Hai anche imparato come utilizzare la funzione Coalesce come alternativa alla funzione isNull.
Grazie per aver letto!!