# Mid Funzione per script e grafici

Mid() restituisce la parte della stringa di input che inizia nella posizione del carattere definito dal secondo argomento, 'start', e che restituisce il numero di caratteri definito dal terzo argomento, 'count'. Se viene omesso 'count', viene restituita la parte rimanente della stringa di input. Il primo carattere nella stringa di input viene contrassegnato con il numero 1.

Sintassi:

Mid(text, start[, count])

Tipo di dati restituiti: stringa

Argomenti

| Argomento | Descrizione |
| --- | --- |
| text | La stringa originale. |
| start | Numero intero che definisce la posizione del primo carattere di text da includere. |
| count | Definisce la lunghezza della stringa di output. Se omesso, verranno inclusi tutti i caratteri a partire dalla posizione definita da start. |

Esempio: espressioni del grafico

| Esempio | Risultato |
| --- | --- |
| `Mid( 'abcdef',3 )` | Restituisce `cdef` |
| `Mid( 'abcdef',3, 2 )` | Restituisce `cd` |

## Esempio: principi fondamentali della funzione Mid

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

#### Espressione del grafico

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati che viene caricato in una tabella dati chiamata `Example`.

* I seguenti campi nella tabella dati:

  * `InputText`, la stringa di testo originale.

  * `StartPosition`, la posizione iniziale del primo carattere da includere dalla stringa di testo originale dopo l'elaborazione.

  * `CharacterCount`, il numero di caratteri da restituire (parametro facoltativo).

Script di caricamento

```
Example:
Load * inline [
InputText, StartPosition, CharacterCount
abcdef, 3, 2
abcdef, 2, 3
210714, 3, 2
210714, 2, 3
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* ` InputText
                                   `

* `StartPosition`

* `CharacterCount`

Creare le seguenti dimensioni calcolate:

* `=mid(InputText,StartPosition)`, per calcolare i caratteri da estrarre da `InputText` a partire dal valore del campo `StartPosition`. La funzione restituirà tutti i caratteri dal valore `StartPosition` alla fine di `InputString` perché non è stato fornito alcun parametro `Count`.

* `=mid(InputText,StartPosition,CharacterCount)`, per calcolare i caratteri da estrarre da `InputText` a partire dal valore del campo `StartPosition`. Il valore di `CharacterCount` determina il numero di caratteri restituiti, a partire dal valore del campo `StartPosition`.

Tabella dei risultati

| TestoInput | PosizioneIniziale | ConteggioCaratteri | Mid(TestoInput,PosizioneIniziale) | Mid(TestoInput,PosizioneIniziale,NumeroCaratteri |
| --- | --- | --- | --- | --- |
| abcdef | 2 | 3 | bcdef | bcd |
| abcdef | 3 | 2 | cdef | cd |
| 20210714 | 2 | 3 | 10714 | 107 |
| 20210714 | 3 | 2 | 0714 | 07 |

La prima riga restituisce il valore `bcdef` per la prima espressione. L'espressione inizia dalla posizione 2 e restituisce tutti i caratteri perché l'argomento `Count` non è impostato. Anche la seconda espressione inizia dalla posizione 2 ma restituisce solo i caratteri `bcd` perché l'argomento `Count` è uguale a 2.

La seconda riga restituisce il valore `cdef` per la prima espressione. L'espressione inizia dalla posizione 3 e restituisce tutti i caratteri perché l'argomento `Count` non è impostato. Anche la seconda espressione inizia dalla posizione 3 ma restituisce solo i caratteri `cd` perché l'argomento `Count` è uguale a 2.

La terza riga restituisce il valore `10714` per la prima espressione. L'espressione inizia dalla posizione 2 e restituisce tutti i caratteri perché l'argomento `Count` non è impostato. Anche la seconda espressione inizia dalla posizione 2 ma restituisce solo i caratteri `107` perché l'argomento `Count` è uguale a 3.

La quarta riga restituisce il valore `0714` per la prima espressione. L'espressione inizia dalla posizione 3 e restituisce tutti i caratteri perché l'argomento `Count` non è impostato. Anche la seconda espressione inizia dalla posizione 2 ma restituisce solo i caratteri `07` perché l'argomento `Count` è uguale a 2.

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

#### Script di caricamento

Il codice seguente mostra come utilizzare la funzione in uno script di caricamento.

```
Example:
Load *,
mid(Text,StartPosition) as Mid1,
mid(Text,StartPosition,Count) as Mid2;
Load * inline [
Text, StartPosition, Count
'abcdef', 3, 2
'abcdef', 2, 3
'210714', 3, 2
'210714', 2, 3
];
```

Tabella dei risultati

| Testo | PosizioneIniziale | Mid1 | Conteggio | Mid2 |
| --- | --- | --- | --- | --- |
| abcdef | 3 | cdef | 2 | cd |
| abcdef | 2 | bcdef | 3 | bcd |
| 210714 | 3 | 0714 | 2 | 07 |
| 210714 | 2 | 10714 | 3 | 107 |

## Esempio: scenario per l'applicazione della funzione Mid

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

#### Espressione del grafico

Panoramica

Una sorgente dati contiene una colonna chiamata `OrderID` che utilizza il seguente formato strutturato: `ORDYYYY-COUNTRYCODE-ORDERNUMBER`. Per soddisfare un requisito per la creazione di report, è necessario estrarre e presentare il codice del Paese in una colonna separata.

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati che viene caricato in una tabella dati chiamata `Orders`.

* Un campo della tabella dati denominata `OrderID`.

Script di caricamento

```
Orders:
Load * inline [
OrderID
ORD2024-US-123456
ORD2024-UK-654321
ORD2024-CA-789123
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere questo campo come dimensione:

* ` OrderID
                                   `

Creare la seguente dimensione calcolata:

* `=Mid(OrderID, 9, 2)` per estrarre il codice di due lettere per il Paese dal sito `OrderID`.

Tabella dei risultati

| IDOrdine | Mid(IDOrdine, 9, 2) |
| --- | --- |
| ORD2024-CA-789123 | CA |
| ORD2024-UK-654321 | GB |
| ORD2024-US-123456 | Stati Uniti |

L'output della funzione `Mid` ha estratto con successo i codici di due lettere del Paese dai valori della stringa `OrderID`.

## Ulteriori informazioni

* [Index Funzione per script e grafici](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/Index.htm)