# Only

Only() renvoie une valeur s'il n'y a qu'un seul résultat possible dans les données agrégées. Par exemple, la recherche du seul produit dont le prix unitaire est égal à 9 renverra NULL si plusieurs produits ont un prix unitaire de 9.

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

double

* expr : Expression ou champ contenant les données à mesurer.

* SetExpression : Par défaut, la fonction d'agrégation couvre l'ensemble des enregistrements possibles définis par la sélection. Il est possible de définir un ensemble d'enregistrements alternatif à l'aide d'une expression d'analyse d'ensembles.

* TOTAL : Si le terme TOTAL précède les arguments de la fonction, le calcul est effectué à partir de toutes les valeurs possibles au vu des sélections actives, et pas seulement à partir de celles qui sont associées à la valeur dimensionnelle active. Autrement dit, les dimensions du graphique ne sont pas prises en compte. Le qualificateur TOTAL peut être suivi d'une liste d'un ou de plusieurs noms de champ placés entre crochets angulaires &lt;fld&gt;. Ces noms de champ doivent constituer un sous-ensemble des variables de dimension du graphique.

  [Définition de l'étendue d'une agrégation](https://help.qlik.com/fr-FR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/define-aggregation-scope.htm)

Note ConseilUtilisez Only() pour obtenir un résultat NULL lorsque plusieurs valeurs sont possibles dans les échantillons de données.

Exemples et résultats

| Exemple | Résultat |
| --- | --- |
| `<br>Only({<UnitPrice={9}>} Product)` | BB, car il s'agit du seul produit `Product` dont le prix unitaire `UnitPrice` est égal à '9'. |
| `Only({<Product={DD}>} Customer)` | Betacab, car il s'agit du seul client (`Customer`) vendant un produit (`Product`) appelé 'DD'. |
| `Only({<UnitPrice={20}>} UnitSales)` | Le nombre d'éléments `UnitSales` pour lesquels `UnitPrice` est égal à 20 est de 2, car il n'y a qu'une seule valeur sous `UnitSales` pour laquelle le prix unitaire (`UnitPrice`) = 20. |
| `Only({<UnitPrice={15}>} UnitSales)` | NULL, car il y a deux valeurs sous `UnitSales` pour lesquelles le prix unitaire (`UnitPrice`) = 15. |

**Données utilisées dans les exemples :**

`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 '|');`

Exemple de données sous forme de table

| 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 |

## En savoir plus

* [Analyse d'ensembles et expressions d'ensemble](https://help.qlik.com/fr-FR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Définition de l'étendue d'une agrégation](https://help.qlik.com/fr-FR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/define-aggregation-scope.htm)