

 Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner jusqu'au 30 juin 2026. Pour plus d’informations, consultez le [ billet de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Fonction APPROXIMATE PERCENTILE\$1DISC
<a name="r_APPROXIMATE_PERCENTILE_DISC"></a>

APPROXIMATE PERCENTILE\$1DISC est une fonction de distribution inverse qui suppose un modèle de distribution discrète. Elle prend une valeur de centile et une spécification de tri et renvoie un élément de l’ensemble donné. L’approximation permet une exécution de la fonction nettement plus rapide, avec une erreur relative faible d’environ 0,5 %.

Pour une valeur de *percentile* donnée, APPROXIMATE PERCENTILE\$1DISC utilise un algorithme résumé de quantile afin d’évaluer de façon approximative le percentile discret de l’expression dans la clause ORDER BY. APPROXIMATE PERCENTILE\$1DISC renvoie la valeur ayant la valeur de distribution cumulative la moins élevée (par rapport à la même spécification de tri) supérieure ou égale au *percentile*. 

## Syntaxe
<a name="r_APPROXIMATE_PERCENTILE_DISC-synopsis"></a>

```
APPROXIMATE  PERCENTILE_DISC ( percentile )
WITHIN GROUP (ORDER BY expr)
```

## Arguments
<a name="r_APPROXIMATE_PERCENTILE_DISC-arguments"></a>

 *percentile*   
Constante numérique comprise entre 0 et 1. Les valeurs NULL sont ignorées dans le calcul.

WITHIN GROUP ( ORDER BY *expr*)   
Clause qui spécifie les date/time valeurs numériques ou sur lesquelles trier et calculer le percentile. 

## Renvoie
<a name="r_APPROXIMATE_PERCENTILE_DISC-returns"></a>

Type de données identique à l’expression ORDER BY dans la clause WITHIN GROUP.

## Notes d’utilisation
<a name="r_APPROXIMATE_PERCENTILE_DISC-usage-notes"></a>

Si l’instruction APPROXIMATE PERCENTILE\$1DISC inclut une clause GROUP BY, le jeu de résultats est limité. La limite varie en fonction du type de nœud et du nombre de nœuds. Si la limite est dépassée, la fonction échoue et renvoie l’erreur suivante.

```
GROUP BY limit for approximate percentile_disc exceeded.
```

Si vous devez évaluer plus de groupes que ne le permet la limite, pensez à utiliser [Fonction PERCENTILE\$1CONT](r_PERCENTILE_CONT.md). 

## Exemples
<a name="r_APPROXIMATE_PERCENTILE_DISC-examples"></a>

L’exemple suivant renvoie le nombre de ventes, le total des ventes et la valeur du 50e percentile pour les 10 meilleures dates. 

```
select top 10 date.caldate,
count(totalprice), sum(totalprice),
approximate percentile_disc(0.5) 
within group (order by totalprice)
from listing
join date on listing.dateid = date.dateid
group by date.caldate
order by 3 desc;

caldate    | count | sum        | percentile_disc
-----------+-------+------------+----------------
2008-01-07 |   658 | 2081400.00 |         2020.00
2008-01-02 |   614 | 2064840.00 |         2178.00
2008-07-22 |   593 | 1994256.00 |         2214.00
2008-01-26 |   595 | 1993188.00 |         2272.00
2008-02-24 |   655 | 1975345.00 |         2070.00
2008-02-04 |   616 | 1972491.00 |         1995.00
2008-02-14 |   628 | 1971759.00 |         2184.00
2008-09-01 |   600 | 1944976.00 |         2100.00
2008-07-29 |   597 | 1944488.00 |         2106.00
2008-07-23 |   592 | 1943265.00 |         1974.00
```