

 Amazon Redshift ne prendra plus en charge la création de nouveaux UDFs Python à partir du patch 198. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement 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 POSITION
<a name="r_POSITION"></a>

Renvoie l’emplacement de la sous-chaîne spécifiée dans une chaîne.

Consultez [Fonction CHARINDEX](r_CHARINDEX.md) et [Fonction STRPOS](r_STRPOS.md) pour des fonctions similaires.

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

```
POSITION(substring IN string )
```

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

 *substring*   
Sous-chaîne à rechercher dans la *chaîne*. 

 *string*   
Chaîne ou colonne à rechercher. 

## Type de retour
<a name="position-return-type"></a>

La fonction POSITION renvoie un `INTEGER` correspondant à la position de la sous-chaîne (de base 1, pas de base 0). La position est basée sur le nombre de caractères, pas d’octets, de sorte que les caractères à plusieurs octets soient comptés comme des caractères seuls. POSITION renvoie `0` si la sous-chaîne ne figure pas dans la chaîne.

## Exemples
<a name="sub-r_POSITION_usage_notes-examples"></a>

Pour renvoyer la position de la chaîne `fish` dans le mot `dog`, utilisez l’exemple suivant. 

```
SELECT POSITION('fish' IN 'dog');

+-----------+
|  position |
+-----------+
|         0 |
+-----------+
```

Pour renvoyer la position de la chaîne `fish` dans le mot `dogfish`, utilisez l’exemple suivant. 

```
SELECT POSITION('fish' IN 'dogfish');

+-----------+
|  position |
+-----------+
|         4 |
+-----------+
```

 L’exemple suivant utilise la table SALES de l’exemple de base de données TICKIT. Pour plus d’informations, consultez [Exemple de base de données](c_sampledb.md). 

Pour renvoyer le nombre de transactions de vente distinctes avec une commission supérieure à 999,00 dans la table SALES, utilisez l’exemple suivant. Cette commande compte les commissions supérieures à 999,00 en vérifiant si la décimale est à plus de 4 positions du début de la valeur de la commission.

```
SELECT DISTINCT POSITION('.' IN commission), COUNT (POSITION('.' IN commission))
FROM sales 
WHERE POSITION('.' IN commission) > 4 
GROUP BY POSITION('.' IN commission)
ORDER BY 1,2;

+-----------+-------+
|  position | count |
+-----------+-------+
|         5 |   629 |
+-----------+-------+
```