Funzioni stringa

Questo articolo illustra le funzioni stringa e i relativi utilizzi in Tableau. Mostra anche come creare un calcolo stringa attraverso un esempio.

Perché utilizzare le funzioni stringa

Le funzioni stringa ti consentono di utilizzare i dati stringa (ossia i dati di testo). Tableau utilizza l’attuale libreria International Components for Unicode (ICU) per confrontare le stringhe. Il modo in cui le stringhe vengono ordinate e confrontate si basa sia sulla lingua che sulle impostazioni locali ed è possibile che le visualizzazioni cambino poiché l’ICU viene continuamente aggiornato per un migliore supporto linguistico.

Ad esempio, potresti avere un campo contenente i nomi e i cognomi di tutti i tuoi clienti. Un membro può essere: Jane Johnson. Puoi estrarre i cognomi di tutti i clienti in un nuovo campo utilizzando una funzione stringa.

Il calcolo potrebbe presentarsi in questo modo:

SPLIT([Customer Name], ' ', 2)

Pertanto, SPLIT('Jane Johnson' , ' ', 2) = 'Johnson'.

Funzioni stringa disponibili in Tableau

ASCII

SintassiASCII(string)
OutputNumero
DefinizioneRestituisce il codice ASCII per il primo carattere di <string>.
Esempio
ASCII('A') = 65
NoteÈ l’inversa della funzione CHAR.

CHAR

SintassiCHAR(number)
OutputStringa
DefinizioneRestituisce il carattere codificato dal codice ASCII <number>.
Esempio
CHAR(65) = 'A'
NoteÈ l’inversa della funzione ASCII.

CONTAINS

SintassiCONTAINS(string, substring)
OutputBooleano
DefinizioneRestituisce true se la stringa data contiene la sottostringa specificata.
Esempio
CONTAINS("Calculation", "alcu") = true
NoteVedi anche la funzione logica(Il collegamento viene aperto in una nuova finestra) IN, oltre alle espressioni RegEx supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

ENDSWITH

SintassiENDSWITH(string, substring)
OutputBooleano
DefinizioneRestituisce true se la stringa data termina con la sottostringa specificata. Gli spazi vuoti finali vengono ignorati.
Esempio
ENDSWITH("Tableau", "leau") = true
NoteVedi anche le espressioni RegEx supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

FIND

SintassiFIND(string, substring, [start])
OutputNumero
Definizione

Restituisce la posizione dell’indice della sottostringa nella stringa oppure 0 se la sottostringa non viene trovata. Il primo carattere della stringa è la posizione 1.

Se viene aggiunto l’argomento numerico facoltativo start, la funzione ignora qualsiasi istanza della sottostringa che appare prima della posizione iniziale.

Esempio
FIND("Calculation", "alcu") = 2
FIND("Calculation", "Computer") = 0
FIND("Calculation", "a", 3) = 7
FIND("Calculation", "a", 2) = 2
FIND("Calculation", "a", 8) = 0
NoteVedi anche le espressioni RegEx supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

FINDNTH

SintassiFINDNTH(string, substring, occurrence)
OutputNumero
DefinizioneRestituisce la posizione dell’occorrenza n della sottostringa all’interno della stringa specificata, dove n è definito dall’argomento dell’occorrenza.
Esempio
FINDNTH("Calculation", "a", 2) = 7
Note

FINDNTH non è disponibile per tutte le origini dati.

Vedi anche le espressioni RegEx supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

LEFT

Sintassi LEFT(string, number)
OutputStringa
DefinizioneRestituisce il numero <number> di caratteri più a sinistra della stringa.
Esempio
LEFT("Matador", 4) = "Mata"
NoteVedi anche MID e RIGHT.

LEN

SintassiLEN(string)
OutputNumero
DefinizioneRestituisce la lunghezza della stringa.
Esempio
LEN("Matador") = 7
NoteDa non confondere con la funzione spaziale(Il collegamento viene aperto in una nuova finestra) LENGTH.

LOWER

SintassiLOWER(string)
OutputStringa
DefinizioneRestituisce la stringa <string> in caratteri minuscoli.
Esempio
LOWER("ProductVersion") = "productversion"
NoteVedi anche UPPER e PROPER.

LTRIM

Sintassi LTRIM(string)
OutputStringa
DefinizioneRestituisce la stringa <string> con gli eventuali spazi iniziali rimossi.
Esempio
LTRIM(" Matador ") = "Matador "
NoteVedi anche RTRIM.

MAX

SintassiMAX(expression) oppure MAX(expr1, expr2)
OutputStesso tipo di dati dell’argomento o NULL se qualsiasi parte dell’argomento è NULL.
Definizione

Restituisce il massimo dei due argomenti, che devono essere dello stesso tipo di dati.

MAX può anche essere applicato a un singolo campo come aggregazione.

Esempio
MAX(4,7) = 7
MAX(#3/25/1986#, #2/20/2021#) = #2/20/2021#
MAX([Name]) = "Zander"
Note

Per le stringhe

MAX è solitamente l’ultimo valore in ordine alfabetico.

Per le origini dati di database, MAX permette di trovare il valore stringa più alto nella sequenza di ordinamento definita dal database per quella colonna.

Per le date

Per le date, MAX è la data più recente. Se MAX è un’aggregazione, il risultato non avrà una gerarchia di date. Se MAX è un confronto, il risultato manterrà la gerarchia di date.

Come aggregazione

MAX(expression) è una funzione aggregata e restituisce un singolo risultato aggregato. Questo risultato viene mostrato come AGG(expression) nella visualizzazione.

Come confronto

MAX(expr1, expr2) confronta i due valori e restituisce un valore a livello di riga.

Vedi anche MIN.

MID

Sintassi(MID(string, start, [length])
OutputStringa
Definizione

Restituisce una stringa a partire dalla posizione start specificata. Il primo carattere della stringa è la posizione 1.

Se viene aggiunto l’argomento numerico facoltativo length, la stringa restituita include solo quel numero di caratteri.

Esempio
MID("Calculation", 2) = "alculation"
MID("Calculation", 2, 5) ="alcul"
NoteVedi anche le espressioni RegEx supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

MIN

SintassiMIN(expression) oppure MIN(expr1, expr2)
OutputStesso tipo di dati dell’argomento o NULL se qualsiasi parte dell’argomento è NULL.
Definizione

Restituisce il minimo dei due argomenti, che devono essere dello stesso tipo di dati.

MIN può anche essere applicato a un singolo campo come aggregazione.

Esempio
MIN(4,7) = 4
MIN(#3/25/1986#, #2/20/2021#) = #3/25/1986#
MIN([Name]) = "Abebi"
Note

Per le stringhe

MIN è solitamente il primo valore in ordine alfabetico.

Per le origini dati di database, MIN permette di trovare il valore stringa più basso nella sequenza di ordinamento definita dal database per quella colonna.

Per le date

Per le date, MIN è la prima data. Se MIN è un’aggregazione, il risultato non avrà una gerarchia di date. Se MIN è un confronto, il risultato manterrà la gerarchia di date.

Come aggregazione

MIN(expression) è una funzione aggregata e restituisce un singolo risultato aggregato. Questo risultato viene mostrato come AGG(expression) nella visualizzazione.

Come confronto

MIN(expr1, expr2) confronta i due valori e restituisce un valore a livello di riga.

Vedi anche MAX.

PROPER

SintassiPROPER(string)
OutputStringa
Definizione

Restituisce la stringa <string> specificata con la prima lettera di ogni parola in maiuscolo e le lettere rimanenti in minuscolo.

Esempio
PROPER("PRODUCT name") = "Product Name"
PROPER("darcy-mae") = "Darcy-Mae"
Note

Anche gli spazi e i caratteri non alfanumerici, come la punteggiatura, sono trattati come separatori.

Vedi anche LOWER e UPPER.

Limitazioni del databasePROPER è disponibile solo per alcuni file flat e nelle estrazioni. Se devi utilizzare PROPER in un’origine dati che altrimenti non lo supporta, valuta la possibilità di utilizzare un’estrazione.

REPLACE

SintassiREPLACE(string, substring, replacement
OutputStringa
DefinizioneCerca in <string> provare <substring> e la sostituisce con <replacement>. Se <substring> non viene trovata, la stringa rimane inalterata.
Esempio
REPLACE("Version 3.8", "3.8", "4x") = "Version 4x"
NoteVedi anche REGEXP_REPLACE nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).
SintassiRIGHT(string, number)
OutputStringa
DefinizioneRestituisce il numero <number> di caratteri più a destra della stringa.
Esempio
RIGHT("Calculation", 4) = "tion"
NoteVedi anche LEFT e MID.

RTRIM

SintassiRTRIM(string)
OutputStringa
DefinizioneRestituisce la stringa <string> con gli eventuali spazi finali rimossi.
Esempio
RTRIM(" Calculation ") = " Calculation"
NoteVedi anche LTRIM e TRIM.

SPACE

SintassiSPACE(number)
OutputStringa (nello specifico, solo spazi)
DefinizioneRestituisce una stringa composta dal numero specificato di spazi ripetuti.
Esempio
SPACE(2) = "  "

SPLIT

SintassiSPLIT(string, delimiter, token number)
OutputStringa
DefinizioneRestituisce una sottostringa da una stringa, usando un carattere delimitatore per dividere la stringa in una sequenza di token.
Esempio
SPLIT ("a-b-c-d", "-", 2) = "b"
SPLIT ("a|b|c|d", "|", -2) = "c"
Note

La stringa è interpretata come una sequenza alternata di delimitatori e token. Quindi per la stringa abc-defgh-i-jkl, dove il carattere delimitatore è “-”, i token sono (1) abc, (2) defgh, (3) i e (4) jlk.

SPLIT restituisce il token corrispondente al numero del token. Quando il numero del token è positivo, i token sono contati a partire dall’estremità sinistra della stringa; quando il numero è negativo, i token sono contati a partire da destra.

Vedi anche le espressioni REGEX supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

Limitazioni del database

I comandi di divisione e di divisione personalizzata sono disponibili per i tipi di origini dati seguenti: estrazioni dati Tableau, Microsoft Excel, file di testo, file PDF, Salesforce, OData, Microsoft Azure Market Place, Google Analytics, Vertica, Oracle, MySQL, PostgreSQL, Teradata, Amazon Redshift, Aster Data, Google Big Query, Cloudera Hadoop Hive, Hortonworks Hive e Microsoft SQL Server.

Alcune origini dati impongono limiti per la divisione delle stringhe. Consulta le limitazioni della funzione SPLIT più avanti in questo argomento.

STARTSWITH

SintassiSTARTSWITH(string, substring)
OutputBooleano
DefinizioneRestituisce true se string inizia con substring. Gli spazi vuoti iniziali vengono ignorati.
Esempio
STARTSWITH("Matador, "Ma") = TRUE
NoteVedi anche CONTAINS, oltre alle espressioni REGEX supportate nella documentazione sulle funzioni aggiuntive(Il collegamento viene aperto in una nuova finestra).

TRIM

SintassiTRIM(string)
OutputStringa
DefinizioneRestituisce la stringa <string> specificata con gli spazi iniziali e finali rimossi.
Esempio
TRIM(" Calculation ") = "Calculation"
NoteVedi anche LTRIM e RTRIM.

UPPER

SintassiUPPER(string)
OutputStringa
DefinizioneRestituisce la stringa <string> in caratteri maiuscoli.
Esempio
UPPER("Calculation") = "CALCULATION"
NoteVedi anche PROPER e LOWER.

Creare un calcolo stringa

Per informazioni su come creare un calcolo stringa, segui i passaggi seguenti.

  1. In Tableau Desktop, connettiti all’origine dati salvata Esempio - Supermercato, fornita con Tableau.

  2. Passa a un foglio di lavoro.

  3. Dal riquadro Dati, sotto Dimensioni, trascina ID ordine sullo spazio Righe.

    Tieni presente che ogni ID ordine contiene valori per paese (Canada e Stati Uniti), anno (2011) e numero ordine (100006). In questo esempio, creerai un calcolo per estrarre solo il numero ordine dal campo.

  4. Seleziona Analisi > Crea campo calcolato.

  5. Nell’editor di calcolo che si apre, esegui le seguenti operazioni:

    • Denomina il campo calcolato Numeri ID ordine.

    • Immetti la seguente formula:

      RIGHT([Order ID], 6)

      Questa formula prende le cifre specificate (6) a destra della stringa e le estrae in un nuovo campo.

      Pertanto, RIGHT('CA-2011-100006' , 6) = '100006'.

    • Al termine, fai clic su OK.

      Visualizzerai il nuovo campo calcolato sotto Dimensioni nel riquadro Dati. Proprio come gli altri campi, puoi utilizzarlo in una o più visualizzazioni.

  6. Dal riquadro Dati, trascina Numeri ID ordine sullo spazio Righe. Posizionalo a destra di ID ordine.

    Nota come i campi differiscono adesso.

Limitazioni di SPLIT per origine dati

Alcune origini dati impongono limiti alla suddivisione delle stringhe. La tabella seguente indica quali origini dati supportano i numeri di token negativi (divisione da destra) e se esiste un limite al numero di divisioni consentite per origine dati.

Una funzione SPLIT che specifica un numero di token negativo e che sarebbe consentita con altre origini dati, con le origini dati seguenti restituirà l’errore “Splitting from right is not support by the data source” (La divisione da destra non è supportata dall’origine dati).

Origine datiVincoli a sinistra/destraNumero massimo di divisioniLimiti di versione
Estrazione dati TableauEntrambiInfinito 
Microsoft ExcelEntrambiInfinito 
File di testoEntrambiInfinito 
SalesforceEntrambiInfinito 
ODataEntrambiInfinito 
Google AnalyticsEntrambiInfinito 
Tableau Data ServerEntrambiInfinitoSupportata nella versione 9.0.
VerticaSolo a sinistra10 
OracleSolo a sinistra10 
MySQLEntrambi10 
PostgreSQLA sinistra solo prima della versione 9.0; entrambi per la versione 9.0 e superiori.10 
TeradataSolo a sinistra10Versione 14 e successive
Amazon RedshiftSolo a sinistra10 
Aster DatabaseSolo a sinistra10 
Google BigQuerySolo a sinistra10 
Hortonworks Hadoop HiveSolo a sinistra10 
Cloudera HadoopSolo a sinistra10Impala supportato a partire dalla versione 2.3.0.
Microsoft SQL ServerEntrambi102008 e successive

Vedi anche

Funzioni in Tableau

Funzioni di Tableau (in ordine alfabetico)

Funzioni di Tableau (per categoria)

Formattazione dei calcoli in Tableau

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!