# Max - funzione per grafici

Max() rileva il valore più alto dei dati aggregati. Specificando rank n, è possibile trovare il valore n-esimo più alto.

Nota di suggerimentoPuò essere utile consultare anche le funzioni FirstSortedValue e RangeMax, che presentano somiglianze con la funzione Max.

Sintassi:

Max([{SetExpression}] [TOTAL [&lt;fld {,fld}&gt;]] expr [,rank])

Tipo di dati restituiti: numerico

Argomenti

| Argomento | Descrizione |
| --- | --- |
| expr | L'espressione o il campo contenente i dati da misurare. |
| rank | Il valore predefinito di rank è 1, che corrisponde al valore più elevato. Specificando rank come 2 verrà restituito il secondo valore più elevato. Se rank è 3, verrà restituito il terzo valore più elevato e così via. |
| SetExpression | Per impostazione predefinita, la funzione di aggregazione aggrega la serie di possibili record definiti dalla selezione. È possibile definire una serie di record alternativa mediante un'espressione Set Analysis. |
| TOTAL | Se la parola TOTAL viene riportata prima degli argomenti della funzione, il calcolo verrà effettuato su tutti i valori possibili dati dalle selezioni correnti e non solo su quelli relativi al valore dimensionale attuale, vale a dire che verranno ignorate le dimensioni del grafico.<br><br>Utilizzando TOTAL [&lt;fld {.fld}&gt;], dove il qualificatore TOTAL è seguito da un elenco di uno o più nomi di campo come sottogruppo delle variabili di dimensione del grafico, si crea un sottogruppo di tutti i valori possibili.<br><br>[Definizione dell'ambito di aggregazione](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Esempio: espressioni del grafico

| Esempio | Risultato |
| --- | --- |
| `Max(UnitSales)` | Restituisce il valore più elevato nel campo `UnitSales`. |
| `Max(UnitSales*UnitPrice)` Il valore di un ordine viene calcolato moltiplicando il numero di unità vendute (`UnitSales`) per il prezzo unitario. | Restituisce il valore più elevato del risultato del calcolo di tutti i valori possibili di (`UnitSales`) \* (`UnitPrice`). |
| `Max(UnitSales, 2)` | Restituisce il valore del secondo valore più alto. |
| `Max(TOTAL UnitSales)` | Il qualificatore `TOTAL` sta a indicare che viene trovato il valore più elevato possibile, ignorando le dimensioni del grafico. Per un grafico con `Customer` come dimensione, il qualificatore `TOTAL` assicurerà il valore massimo nell'intero set di dati, anziché il valore `UnitSales` massimo per ciascun cliente. |
| `Max({1} TOTAL UnitSales)` | L'espressione dell'analisi set `{1}` definisce il set di record da valutare come `ALL`, indipendentemente dalla selezione effettuata. Ad esempio, se viene selezionato un cliente specifico, verrà comunque restituito il valore `UnitSales` massimo nell'intero set di dati. |

## Esempio: principi fondamentali della funzione Max

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/max.htm)

#### Espressione del grafico

Panoramica

Un set di dati contiene i dati sulle vendite di prodotti suddivisi per mese. Vogliamo identificare il valore massimo delle vendite per ogni prodotto e il mese in cui si è verificato.

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:

  * `Customer`

  * `UnitSales`

  * `UnitPrice`

Script di caricamento

```
Example:
LOAD * inline [
Customer|UnitSales|UnitPrice
Astrida|4|16
Astrida|10|15
Astrida|9|9
Betacab|5|10
Betacab|2|20
Betacab||25
Canutility|8|15
Canutility||19
] (delimiter is '|');
```

Risultati

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

* `Customer`

Creare le seguenti misure:

* `=Max(UnitSales)`, per calcolare il valore `UnitSales` massimo.

* `=Max(UnitSales*UnitPrice)`, per calcolare il valore massimo dopo aver moltiplicato `UnitSales` per `UnitPrice` riga per riga.

* `=Max(UnitSales, 2)`, per calcolare il secondo valore più alto.

* `=Max(TOTAL UnitSales)`, per calcolare il totale più alto, indipendentemente dalla dimensione del grafico.

* `=Max({1} TOTAL UnitSales)`, per calcolare il totale più alto ignorando tutte le selezioni.

Results table

| Customer | Max(UnitSales) | Max(UnitSales\*UnitPrice) | Max(UnitSales, 2) | Max(TOTAL UnitSales) | Max({1} TOTAL UnitSales) |
| --- | --- | --- | --- | --- | --- |
| Totals | 10 | 150 | 9 | 10 | 10 |
| Astrida | 10 | 150 | 9 | 10 | 10 |
| Betacab | 5 | 50 | 2 | 10 | 10 |
| Canutility | 8 | 120 | - | 10 | 10 |

In questo esempio, fare quanto segue:

* Nella prima misura (`Max(UnitSales)`), il valore più alto per `UnitSales` per il cliente `Astrida` è `10`. La cella `Totals` di questa colonna restituisce `10` perché questo valore è anche il valore `UnitSales` più alto dell'intero set di dati.

* Nella seconda misura (`Max(UnitSales*UnitPrice)`), `150` viene restituito per `Astrida`.Questo è il valore più alto per quel cliente quando si moltiplica `UnitSales` per `UnitPrice`. Anche la cella `Totals` di questa colonna restituisce `150`, perché questo è anche il valore calcolato più alto nell'intero set di dati.

* Nella terza misura (`Max(UnitSales, 2)`), il secondo valore `UnitSales` più alto per il cliente `Astrida` è `9`. Questo valore è anche il secondo valore più alto per tutti e tre i clienti, quindi la riga `Totals` restituisce anche `9`.

* La quarta misura (`Max(TOTAL UnitSales)`) restituisce il valore `10`. Questo è il valore più alto trovato indipendentemente dalla dimensione del cliente, quindi tutte le righe restituiscono lo stesso valore. Tuttavia, se si seleziona il cliente `Betacab`, la tabella restituirà solo i valori per quel cliente, in questo caso `5`, perché è il valore `UnitSales` più alto tra tutti i prodotti per `Betacab`.

* La quinta misura (`Max({1} TOTAL UnitSales)`) restituisce il valore `10` indipendentemente da quale `Customer` è selezionato, perché viene utilizzato il set `{1}` modificato. Ad esempio, se si seleziona `Betacab`, questa colonna continuerà a restituire il valore `10`.

## Esempio: scenario per la funzione Max che calcola le vendite più alte in base al mese

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/max.htm)

#### Espressione del grafico

Panoramica

Un set di dati contiene i dati sulle vendite di prodotti suddivisi per mese. Un responsabile vendite vuole identificare il valore massimo delle vendite per ogni prodotto e il mese in cui l'operazione è stata completata.

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:

  * `Product`

  * `Sales`

  * `Month`

Script di caricamento

```
Example:
Load * inline [
Product,Sales,Month
A, 500, 2024-01-01
A, 700, 2024-02-01
A, 600, 2024-03-01
B, 300, 2024-01-01
B, 800, 2024-02-01
B, 450, 2024-03-01
C, 550, 2024-01-01
C, 620, 2024-02-01
C, 710, 2024-03-01
];
```

Risultati

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

* `Product`

* `Month`

Creare le seguenti misure:

* `=If(Sales = Max(TOTAL <Product> Sales), Sales)`, per calcolare le vendite massime per ogni prodotto. Nel pannello delle proprietà della misura, selezionare Componenti aggiuntivi &gt; Gestione dati. Deselezionare la casella di controllo Includi valori zero per rimuovere qualsiasi valore nullo.

Results table

| Product | Month | If(Sales = Max(TOTAL &lt;Product&gt; Sales), Sales) |
| --- | --- | --- |
| A | 2024-02-01 | 700 |
| B | 2024-02-01 | 800 |
| C | 2024-03-01 | 710 |

I risultati della misura restituiscono il valore massimo delle vendite per ogni prodotto e il mese in cui questo valore è stato raggiunto. Per esempio, `Product B` ha ottenuto le vendite più alte (`800`) in `2024-02-01`.

## Ulteriori informazioni

* [FirstSortedValue - funzione per grafici](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/firstsortedvalue.htm)
* [RangeMax Funzione per script e grafici](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RangeFunctions/rangemax.htm)
* [Analisi di gruppo](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Definizione dell'ambito di aggregazione](https://help.qlik.com/it-IT/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm)