# match - funzione dello script e del grafico

La funzione match confronta il primo parametro con tutti i parametri seguenti e restituisce la posizione numerica delle espressioni corrispondenti. Il confronto rispetta la distinzione maiuscole/minuscole.

Sintassi:

match( str, expr1 [ , expr2,...exprN ])

Nota di suggerimentoSe si desidera utilizzare il confronto senza distinzione tra lettere minuscole e maiuscole, servirsi della funzione mixmatch. Se si desidera utilizzare il confronto senza distinzione tra lettere minuscole e maiuscole e i caratteri speciali, servirsi della funzione wildmatch.

Alcuni degli esempi in questo argomento utilizzano caricamenti inline. [Utilizzo dei caricamenti inline per caricare i dati](https://help.qlik.com/it-IT/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)

## Esempio: script di caricamento che usa match

####

Script di caricamento

È possibile utilizzare match per caricare un sottogruppo dei dati. Ad esempio, è possibile restituire un valore numerico per un'espressione nella funzione. È quindi possibile limitare i dati caricati in base al valore numerico. Match restituisce 0 se non vi sono corrispondenze. Tutte le espressioni senza corrispondenze in questo esempio restituiranno quindi 0 e saranno escluse dal caricamento dei dati dall'istruzione WHERE.

Creare una nuova scheda nell'editor caricamento dati, quindi caricare i seguenti dati come caricamento inline. Creare la tabella in basso in Qlik Sense per visualizzare i risultati.

```
Transactions:
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, m, orange
3752, 20180916, 5.75, 1, 5646471, S, blue
3753, 20180922, 125.00, 7, 3036491, l, Black
3754, 20180922, 484.21, 13, 049681, xs, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
];
 
/*
Create new table called Transaction_Buckets
Create new fields called Customer, and Color code Blue and Black
Load Transactions table.
Match returns 1 for 'Blue', 2 for 'Black'. 
Does not return a value for 'blue' because match is case sensitive.
Only values that returned numeric value greater than 0 
are loaded by WHERE statement into Transactions_Buckets table.
*/
 
Transaction_Buckets:
Load
 customer_id,
 customer_id as [Customer], 
 color_code as [Color Code Blue and Black]
Resident Transactions
Where match(color_code,'Blue','Black') > 0; 
```

Risultati

Tabella Qlik SenseQlik Sense che mostra l'output derivante dall'utilizzo della funzione matchmatch nello script di caricamento

| Codice colore Blu e Nero | Cliente |
| --- | --- |
| Nero | 203521 |
| Nero | 3036491 |
| Blu | 2038593 |

## Esempio: espressioni dei grafici che utilizzano match

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/match.htm)

#### Esempio: espressioni del grafico

Espressione del grafico 1

Script di caricamento

Creare una nuova scheda nell'editor caricamento dati, quindi caricare i seguenti dati come caricamento inline. Dopo aver caricato i dati, creare gli esempi di espressione del grafico in basso in una tabella Qlik Sense.

```
MyTable:
Load * inline [Cities, Count
Toronto, 123
Toronto, 234
Toronto, 231
Boston, 32
Boston, 23
Boston, 1341
Beijing, 234
Beijing, 45
Beijing, 235
Stockholm, 938
Stockholm, 39
Stockholm, 189
zurich, 2342
zurich, 9033
zurich, 0039];
```

La prima espressione nella tabella sottostante restituisce 0 per Stockholm perché "Stockholm" non è inclusa nell'elenco di espressioni nella funzione match. Restituisce 0 anche per "Zurich", perché il confronto match rispetta la distinzione tra maiuscole e minuscole.

Tabella di Qlik SenseQlik Sense che mostra esempi della funzione matchmatch in un'espressione del grafico.

| Città | match( Cities,'Toronto','Boston','Beijing','Zurich') | match( Cities,'Toronto','Boston','Beijing','Stockholm','zurich') |
| --- | --- | --- |
| Beijing | 3 | 3 |
| Boston | 2 | 2 |
| Stockholm | 0 | 4 |
| Toronto | 1 | 1 |
| zurich | 0 | 5 |

Espressione del grafico 2

È possibile utilizzare la funzione match per eseguire un ordinamento personalizzato per un'espressione.

Per impostazione predefinita, le colonne vengono ordinate numericamente o alfabeticamente, a seconda dei dati.

Tabella Qlik SenseQlik Sense che mostra un esempio dell'impostazione di ordinamento predefinita

| Città |
| --- |
| Beijing |
| Boston |
| Stockholm |
| Toronto |
| zurich |

Per modificare l'ordine, procedere come segue:

1. Aprire la sezione Ordinamento del grafico nel pannello Proprietà.

2. Disattivare l'ordinamento automatico per la colonna su cui si desidera eseguire un ordinamento personalizzato.

3. Deselezionare Ordina per numero ​​e Ordina per lettera.

4. Selezionare Ordina per espressione e quindi inserire un'espressione simile alla seguente:

   `=match( Cities, 'Toronto','Boston','Beijing','Stockholm','zurich')`

   L'ordinamento della colonna Cities verrà modificato.

Tabella Qlik SenseQlik Sense che mostra un esempio di modifica dell'ordinamento mediante la funzione matchmatch

| Città |
| --- |
| Toronto |
| Boston |
| Beijing |
| Stockholm |
| zurich |

È inoltre possibile visualizzare il valore numerico restituito.

Tabella Qlik SenseQlik Sense che mostra un esempio dei valori numerici restituiti dalla funzione matchmatch

| Città | Cities & ' - ' & match ( Cities, 'Toronto','Boston', 'Beijing','Stockholm','zurich') |
| --- | --- |
| Toronto | Toronto - 1 |
| Boston | Boston - 2 |
| Beijing | Beijing - 3 |
| Stockholm | Stockholm - 4 |
| zurich | zurich - 5 |

## Ulteriori informazioni

* [mixmatch - funzione dello script e del grafico](https://help.qlik.com/it-IT/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/mixmatch.htm)
* [wildmatch - funzione dello script e del grafico](https://help.qlik.com/it-IT/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/wildmatch.htm)