EmptyIsNull - funzione dello script e del grafico
La funzione EmptyIsNull converte stringhe vuote in NULL. Pertanto, restituisce NULL se il parametro è una stringa vuota, altrimenti restituisce il parametro.
Sintassi:
EmptyIsNull(exp )
Tipo di dati restituiti: NULL se il parametro è una stringa vuota, altrimenti restituisce il parametro.
Argomento | Descrizione |
---|---|
expr | L'espressione o il campo contenente i dati da misurare. |
Esempio | Risultato |
---|---|
EmptyIsNull(AdditionalComments) |
Questa espressione restituirà NULL per qualsiasi valore di stringa vuoto per il campo AdditionalComments, al posto delle stringhe vuote. Vengono restituite le stringhe e i numeri non vuoti. |
EmptyIsNull(PurgeChar(PhoneNumber, ' -()')) |
Questa espressione rimuoverà qualsiasi trattino, spazio e parentesi dal campo PhoneNumber. Se non sono rimasti caratteri, la funzione EmptyIsNull restituisce la stringa vuota come NULL; un phone number corrisponde a un valore phone number assente. |
Esempio: principi fondamentali della funzione EmptyIsNull
Panoramica
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
-
Un set di dati che viene caricato in una tabella dati chiamata Example.
-
I seguenti campi nella tabella dati:
-
CustomerID
-
OrderID
-
Product
-
Status
-
PhoneNumber
-
Script di caricamento
Example:
LOAD * inline [
CustomerID, OrderID, Product, Status, PhoneNumber
1, 1001, Widget,, (0123) 456 789
2, 1002, Gizmo, Open,-
3, 1003, Gadget, Closed,()
4, 1004, Widget,,678-9888
];
Risultati
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:
-
CustomerID
-
OrderID
-
Product
-
Status
Creare le seguenti dimensioni calcolate:
-
=EmptyIsNull(Status), per restituire come NULL qualsiasi valore di stringa vuoto nel campo Status.
-
=EmptyIsNull(PurgeChar(PhoneNumber, ' -()')), per rimuovere qualsiasi trattino, spazio e parentesi dal campo PhoneNumber. Se non sono rimasti caratteri, la funzione EmptyIsNull restituisce la stringa vuota come NULL; un numero di telefono vuoto corrisponde a un numero di telefono assente.
CustomerID |
OrderID |
Product | Status | EmptyIsNull(Status) | EmptyIsNull(PurgeChar(PhoneNumber, ' -()')) |
---|---|---|---|---|---|
1 | 1001 | Widget | - | 0123456789 | |
2 | 1002 | Gizmo | Open | Open | - |
3 | 1003 | Gadget | Closed | Closed | - |
4 | 1004 | Widget | - | 6789888 |
Nella colonna Status, notare che i record con valori vuoti appaiono come celle vuote con un colore di sfondo trasparente predefinito. L'output della misura EmptyIsNull(Status) restituisce NULL per questi valori vuoti, come indicato dal carattere trattino (-) con sfondo grigio della cella.
La seconda misura utilizza la funzione EmptyIsNull con il campo PurgeChar - funzione dello script e del grafico per rimuovere i trattini (-), gli spazi e le parentesi () dal campo PhoneNumber e quindi restituire le stringhe vuote rimanenti come NULL. Le celle con valori null ora appaiono con un trattino (-) e una formattazione con sfondo grigio.
Esempio: sostituzione di valori nulli con testo e aggiunta di formattazione condizionale
Panoramica
Un responsabile vendite vuole analizzare i dati delle vendite e identificare facilmente i record che contengono valori mancanti.
Aprire l'editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova scheda.
Lo script di caricamento contiene:
-
Un set di dati che viene caricato in una tabella dati chiamata Example.
-
I seguenti campi nella tabella dati:
-
ID
-
Name
-
Age
-
Email
-
Sales
-
Region
-
OrderStatus
-
Script di caricamento
Example:
LOAD * inline [
ID,Name, Age, Email, Sales, Region, OrderStatus
1, John Smith, 30, john@email.com, 1000, North, Active
2, Jane Doe, '', jane@email.com, 1500, South, Active
3, Bob Johnson, 45, '', 800, East, Inactive
4, Alice Brown, 28, alice@email.com, '', West, Active
5, Charlie Lee, '', charlie@email.com, 1200, '', Active
6, Eva Green, 35, eva@email.com, 950, North, ''
7, David White, 50, '', '', South, Inactive
8, Fiona Black, 42, fiona@email.com, 1100, East, Active
];
Risultati
Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:
-
ID
Creare le seguenti dimensioni calcolate:
-
=If(IsNull(EmptyIsNull(Age)), 'NULL', EmptyIsNull(Age)), per restituire come NULL qualsiasi valore di stringa vuoto nel campo Age, e quindi identificare e popolare tutti i valori null con il valore NULL anziché con un carattere trattino (-).
-
=If(IsNull(EmptyIsNull(Email)), 'NULL', EmptyIsNull(Email)), per restituire come NULL qualsiasi valore di stringa vuoto nel campo Email, e quindi identificare e popolare tutti i valori null con il valore NULL anziché con un carattere trattino (-).
-
=If(IsNull(EmptyIsNull(Sales)), 'NULL', EmptyIsNull(Sales)), per restituire come NULL qualsiasi valore di stringa vuoto nel campo Sales, e quindi identificare e popolare tutti i valori null con il valore NULL anziché con un carattere trattino (-).
-
=If(IsNull(EmptyIsNull(Region)), 'NULL', EmptyIsNull(Region)), per restituire come NULL qualsiasi valore di stringa vuoto nel campo Region, e quindi identificare e popolare tutti i valori null con il valore NULL anziché con un carattere trattino (-).
-
=If(IsNull(EmptyIsNull(OrderStatus)), 'NULL', EmptyIsNull(OrderStatus)), per restituire come NULL qualsiasi valore di stringa vuoto nel campo OrderStatus, e quindi identificare e popolare tutti i valori null con il valore NULL anziché con un carattere trattino (-).
Impostare la formattazione condizionale delle celle per cambiare il colore di sfondo in rosso per i valori NULL e in verde per tutti gli altri valori. Nel pannello Proprietà per ogni dimensione e misura, inserire le seguenti espressioni come Espressione colore di sfondo.
-
ID (dimensione): =RGB(200,255,200)
-
Age (misura): =If(IsNull(EmptyIsNull(Age)), RGB(255,200,200), RGB(200,255,200))
-
Email (misura): =If(IsNull(EmptyIsNull(Email)), RGB(255,200,200), RGB(200,255,200))
-
Sales (misura): =If(IsNull(EmptyIsNull(Sales)), RGB(255,200,200), RGB(200,255,200))
-
Region (misura): =If(IsNull(EmptyIsNull(Region)), RGB(255,200,200), RGB(200,255,200))
-
OrderStatus (misura): =If(IsNull(EmptyIsNull(OrderStatus)), RGB(255,200,200), RGB(200,255,200))
ID |
If(IsNull(EmptyIsNull(Age)), 'NULL', EmptyIsNull(Age)) |
If(IsNull(EmptyIsNull(Email)), 'NULL', EmptyIsNull(Email)) | If(IsNull(EmptyIsNull(Sales)), 'NULL', EmptyIsNull(Sales)) | If(IsNull(EmptyIsNull(Region)), 'NULL', EmptyIsNull(Region)) | If(IsNull(EmptyIsNull(OrderStatus)), 'NULL', EmptyIsNull(OrderStatus)) |
---|---|---|---|---|---|
1 | 30 | john@email.com | 1000 | North | Active |
2 | NULL | jane@email.com | 1500 | South | Active |
3 | 45 | NULL | 800 | East | Inactive |
4 | 28 | alice@email.com | NULL | West | Active |
5 | NULL | charlie@email.com | 1200 | NULL | Active |
6 | 35 | eva@email.com | 950 | North | NULL |
7 | 50 | NULL | NULL | South | Inactive |
8 | 42 | fiona@email.com | 1100 | East | Active |
I risultati mostrano che utilizzando la funzione EmptyIsNull e aggiungendo la formattazione condizionale, è possibile identificare facilmente i record con valori mancanti.