# Min - chart function

Min() finds the lowest value of the aggregated data. By specifying a rank n, the nth lowest value can be found.

Tip noteYou might also want to look at FirstSortedValue and RangeMin, which have similar functionality to the Min function.

Syntax:

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

Return data type: numeric

Arguments:

Arguments

| Argument | Description |
| --- | --- |
| expr | The expression or field containing the data to be measured. |
| rank | The default value of rank is 1, which corresponds to the lowest value.<br>By specifying rank as 2, the second lowest value is returned. If rank is 3, the third lowest value is returned, and so on. |
| SetExpression | By default, the aggregation function<br>will aggregate over the set of possible records defined by the selection.<br>An alternative set of records can be defined by a set analysis<br>expression. |
| TOTAL | If the word<br>TOTAL occurs before the function<br>arguments, the calculation is made over all possible values given<br>the current selections, and not just those that pertain to the current dimensional value, that is, it disregards the chart dimensions.<br><br>By using TOTAL [&lt;fld {.fld}&gt;], where the TOTAL qualifier is followed by a list of one or more field names as a subset of the chart dimension variables, you create a subset of the total possible values.<br><br>[Defining the aggregation scope](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

Examples and results:

Data

| Customer | Product | UnitSales | UnitPrice |
| --- | --- | --- | --- |
| Astrida | AA | 4 | 16 |
| Astrida | AA | 10 | 15 |
| Astrida | BB | 9 | 9 |
| Betacab | BB | 5 | 10 |
| Betacab | CC | 2 | 20 |
| Betacab | DD | - | 25 |
| Canutility | AA | 8 | 15 |
| Canutility | CC | - | 19 |

Information noteThe Min() function must return a non-NULL value from the array of values given by the expression, if there is one. So in the examples, because there are NULL values in the data, the function returns the first non-NULL value evaluated from the expression.

Examples and results

| Examples | Results |
| --- | --- |
| `<br>Min(UnitSales)<br>` | 2, because this is the lowest non-NULL value in `UnitSales`. |
| The value of an order is calculated from the number of units sold in (`UnitSales`) multiplied by the unit price.<br><br>`Min(UnitSales*UnitPrice)` | 40, because this is the lowest non-NULL value result of calculating all possible values of (`UnitSales`)\*(`UnitPrice`). |
| `<br>Min(UnitSales, 2)<br>` | 4, which is the second lowest value (after the NULL values). |
| `Min(TOTAL UnitSales)` | 2, because the TOTAL qualifier means the lowest possible value is found, disregarding the chart dimensions. For a chart with Customer as dimension, the TOTAL qualifier will ensure the minimum value across the full dataset is returned, instead of the minimum UnitSales for each customer. |
| Make the selection Customer B.<br><br>`<br>Min({1} TOTAL UnitSales)<br>` | 2, which is independent of the selection of Customer B.<br><br>The Set Analysis expression {1} defines the set of records to be evaluated as ALL, no matter what selection is made. |

Data used in examples:

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

## Learn more

* [FirstSortedValue - chart function](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/BasicAggregationFunctions/firstsortedvalue.htm)
* [RangeMin - script and chart function](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RangeFunctions/rangemin.htm)
* [Set analysis](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Defining the aggregation scope](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm)