Concetto: Valori NULL in tabelle e set di dati
Se un valore di campo in una tabella o in un set di dati è vuoto, viene considerato un valore NULL. Quando si abilita una tabella per l'analisi o si pubblica un set di dati, il sistema sostituisce tutti i valori NULL con un valore predefinito nell'origine dati Prism. Le origini dati, i discovery board e i report Prism non hanno il concetto di valori NULL.
Modalità di elaborazione dei valori NULL nelle tabelle
Un valore può essere NULL perché i dati non elaborati dell'origine non contengono valori per un determinato campo.
Come i set di dati elaborano i valori NULL
Un valore può essere NULL per i seguenti motivi:
- Nei dati non elaborati dell'origine mancano valori per un campo specifico.
- Impossibile analizzare i dati non elaborati da un'origine dati esterna per il tipo di campo specificato.
- Un'espressione di campo calcolato Prism restituisce un risultato vuoto o non valido.
- Il set di dati contiene una fase Join e:
- Si configura un join esterno (includendo tutte le righe di almeno una delle pipeline del set di dati).
- Nessuna corrispondenza tra una pipeline e l'altra.
Valori predefiniti per tipo di campo
Il sistema sostituisce i valori NULL con i seguenti valori in un'origine dati Prism:
Tipo campo | Valore nell'origine dati Prism |
|---|---|
Booleano | Falso |
Valuta | 0 (con un codice valuta vuoto) |
Data | (Vuoto)
Se il valore della data in una tabella abilitata per l'analisi è 0000-12-31T23:59:59.999Z , il sistema visualizza il risultato incoerente. |
Numerico, Doppio, Intero, Long | 0 |
Istanza | (Vuoto) |
Istanza multipla | (Vuoto) |
Testo | (Vuoto) |
NULL Valori nelle espressioni
Prism Analytics utilizza espressioni nei campi calcolati di Prism, nelle fasi Filtro e quando si definiscono dati di esempio personalizzati in un set di dati derivato. Il modo in cui i set di dati trattano i valori NULL nelle espressioni è coerente con lo standard SQL. Ciò significa:
- I calcoli aritmetici nei campi numerici che implicano un valore NULL restituiscono NULL. Esempio:5 + NULLrestituisce NULL.
- Le operazioni di confronto che generano un campo booleano che implicano un valore NULL restituiscono NULL. Esempio:5 > NULLrestituisce NULL.
I campi valuta hanno due componenti per il valore del campo (il codice valuta e il valore valuta) e, di conseguenza, gestiscono i valori NULL in modo leggermente diverso rispetto ai campi numerici nei calcoli aritmetici.
- I calcoli di addizione e sottrazione nei campi Valuta che implicano un valore NULL restituiscono NULL. Esempio:TO_CURRENCY("5.00 USD") + NULLrestituisce NULL.
- I calcoli di addizione e sottrazione su valori di valuta che utilizzano codici valuta diversi restituiscono NULL. Esempio:TO_CURRENCY("5.00 USD") + TO_CURRENCY("5.00 EUR")restituisce NULL.
Non è possibile utilizzare i campi Valuta nelle operazioni di confronto. Tuttavia, è possibile verificare la presenza di valori NULL utilizzando la seguente sintassi:
valueIS NULLvalueIS NOT NULL
Per ulteriori dettagli sulle espressioni booleane, consultare Riferimenti: Espressioni booleane.
Valori NULL nelle fasi filtro
Quando si applica un filtro a un campo utilizzando un'espressione simile a
[field] != MyValue
, il sistema filtra tutti i record che hanno un valore MioValore o NULL. La logica alla base di questo comportamento è:
- Gli operatori di confronto che implicano un valore NULL restituiscono NULL.
- Il sistema valuta i valori booleani NULL come False.
Valori NULL nelle fasi di raggruppamento
Quando si crea una fase Raggruppa per, si seleziona un campo del set di dati per il raggruppamento e un altro campo per il riepilogo. La modalità di trattamento dei valori NULL dipende dall'utilizzo del campo:
- Per i campi di raggruppamento, tutti i valori NULL generano un gruppo a parte.
- Per i campi di riepilogo, la gestione NULL dipende dal tipo di riepilogo.
Tipo di riepilogo | Descrizione |
|---|---|
Media | Restituisce la media di tutti i valori numerici validi nel gruppo. Somma tutti i valori nell'espressione fornita e li divide per il numero di righe valide (non NULL).
Se un campo Valuta contiene più codici valuta, il risultato è NULL. |
Totale | Restituisce il numero di tutte le righe di un gruppo (conta tutti i valori, NULL e non NULL).
Se un campo Valuta contiene più codici valuta, il risultato è NULL. |
Massimo | Restituisce il più grande di tutti i valori diversi da NULL e NULL se tutti i valori sono NULL.
Se un campo Valuta contiene più codici valuta, il risultato è NULL. |
Minimo | Restituisce il più basso di tutti i valori diversi da NULL e NULL se tutti i valori sono NULL.
Se un campo Valuta contiene più codici valuta, il risultato è NULL. |
Somma | Restituisce il totale di tutti i valori diversi da NULL e NULL se tutti i valori sono NULL.
Se un campo Valuta contiene più codici valuta, il risultato è NULL. |