

 Amazon Redshift ne prendra plus en charge l'utilisation des UDF Python après le 30 juin 2026. Nous allons commencer à l'appliquer par étapes. Pour plus d'informations sur les détails de la fin de vie de Python et des options de migration, consultez [ le billet de ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/) blog publié le 30 juin 2025. 

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 COLLATE
<a name="r_COLLATE"></a>

La fonction COLLATE remplace le classement d’une colonne ou d’une expression de chaîne. 

Pour plus d'informations sur la création de tables à l'aide du classement de bases de données, consultez [CREATE TABLE](r_CREATE_TABLE_NEW.md).

Pour plus d'informations sur la création de bases de données à l'aide du classement de bases de données, consultez [CREATE DATABASE](r_CREATE_DATABASE.md).

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

```
COLLATE( string, 'case_sensitive' | 'cs' | 'case_insensitive' | 'ci');
```

## Arguments
<a name="r_COLLATE-argument"></a>

 *string*   
Colonne de chaîne ou expression que vous voulez remplacer.

 *’case\_sensitive’* \| *’cs’* \| *’case\_insensitive’* \| *’ci’*   
Constante de chaîne d’un nom de classement. Amazon Redshift prend uniquement en charge les valeurs suivantes pour ce paramètre :  
+  *case\_sensitive* 
+  *cs* 
+  *case\_insensitive* 
+  *ci* 
*case\_sensitive* et *cs* sont interchangeables et donnent les mêmes résultats. De même, *case\_insensitive* et *ci* sont interchangeables et donnent les mêmes résultats.

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

La fonction COLLATE renvoie `VARCHAR`, `CHAR` ou `SUPER` en fonction du premier type d’expression en entrée. Cette fonction ne modifie que le classement du premier argument d’entrée et ne modifie pas sa valeur de sortie.

## Exemples
<a name="r_COLLATE-example"></a>

Pour créer la table T et définir col1 dans la table T comme `case_sensitive`, utilisez l’exemple suivant.

```
CREATE TABLE T ( col1 Varchar(20) COLLATE case_sensitive );

INSERT INTO T VALUES ('john'),('JOHN');
```

 Lorsque vous exécutez la première requête, Amazon Redshift renvoie uniquement `john`. Après l’exécution de la fonction COLLATE sur col1, le classement devient `case_insensitive`. La deuxième requête renvoie à la fois `john` et `JOHN`. 

```
SELECT * FROM T WHERE col1 = 'john';

+------+
| col1 |
+------+
| john |
+------+

SELECT * FROM T WHERE COLLATE(col1, 'case_insensitive') = 'john';

+------+
| col1 |
+------+
| john |
| JOHN |
+------+
```

Pour créer la table A et définir col1 dans la table A comme `case_insensitive`, utilisez l’exemple suivant.

```
CREATE TABLE A ( col1 Varchar(20) COLLATE case_insensitive );

INSERT INTO A VALUES ('john'),('JOHN');
```

 Lorsque vous exécutez la première requête, Amazon Redshift renvoie à la fois `john` et `JOHN`. Après l’exécution de la fonction COLLATE sur col1, le classement devient `case_sensitive`. La deuxième requête renvoie uniquement `john`. 

```
SELECT * FROM A WHERE col1 = 'john';

+------+
| col1 |
+------+
| john |
| JOHN |
+------+

SELECT * FROM A WHERE COLLATE(col1, 'case_sensitive') = 'john';

+------+
| col1 |
+------+
| john |
+------+
```