

 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.

# STL\$1QUERYTEXT
<a name="r_STL_QUERYTEXT"></a>

Capture le texte de la requête pour les commandes SQL.

Interrogez la vue STL\$1QUERYTEXT afin de capturer le SQL qui a été enregistré pour les instructions suivantes : 
+ SELECT, SELECT INTO
+ INSERT, UPDATE, DELETE
+ COPY
+ UNLOAD
+ Les requêtes générées par l’exécution de VACUUM et ANALYZE
+ CREATE TABLE AS (CTAS)

Pour interroger l’activité de ces instructions sur une période donnée, joignez les vues STL\$1QUERYTEXT et STL\$1QUERY.

**Note**  
Les vues STL\$1QUERY et STL\$1QUERYTEXT contiennent uniquement des informations sur les requêtes, pas sur d’autres utilitaires ou commandes DDL. Pour obtenir la liste et les informations de toutes les instructions exécutées par Amazon Redshift, vous pouvez également interroger les vues STL\$1DDLTEXT et STL\$1UTILITYTEXT. Pour obtenir la liste complète de toutes les instructions exécutées par Amazon Redshift vous pouvez interroger la vue SVL\$1STATEMENTTEXT.

Consultez aussi [STL\$1DDLTEXT](r_STL_DDLTEXT.md), [STL\$1UTILITYTEXT](r_STL_UTILITYTEXT.md) et [SVL\$1STATEMENTTEXT](r_SVL_STATEMENTTEXT.md).

STL\$1QUERYTEXT est visible par tous les utilisateurs. Les super-utilisateurs peuvent voir toutes les lignes, tandis que les utilisateurs standard peuvent voir uniquement leurs propres données. Pour plus d’informations, consultez [Visibilité des données dans les tables et vues système](cm_chap_system-tables.md#c_visibility-of-data).

Tout ou partie des données de cette table sont également disponibles dans la vue de surveillance SYS [SYS\$1QUERY\$1TEXT](SYS_QUERY_TEXT.md). Les données de la vue de surveillance SYS sont formatées pour être plus faciles à utiliser et à comprendre. Nous vous recommandons d’utiliser la vue de surveillance SYS pour vos requêtes.

Notez que lorsque la longueur du texte de votre requête est supérieure à 4 000 caractères, STL\$1QUERYTEXT affiche uniquement les données tronquées. Pour obtenir le texte complet de la requête, vous pouvez utiliser UNION sur le texte de la requête sur les lignes. 

## Colonnes de la table
<a name="r_STL_QUERYTEXT-table-columns"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/dg/r_STL_QUERYTEXT.html)

## Exemples de requêtes
<a name="r_STL_QUERYTEXT-sample-queries"></a>

Vous pouvez utiliser la fonction PG\$1BACKEND\$1PID() pour récupérer les informations de la séance en cours. Par exemple, la requête suivante renvoie l’ID de requête et une partie du texte de la requête pour des requêtes exécutées dans la séance en cours.

```
select query, substring(text,1,60)
from stl_querytext
where pid = pg_backend_pid()
order by query desc;

 query |                         substring
-------+--------------------------------------------------------------
 28262 | select query, substring(text,1,80) from stl_querytext where 
 28252 | select query, substring(path,0,80) as path from stl_unload_l
 28248 | copy category from 's3://dw-tickit/manifest/category/1030_ma
 28247 | Count rows in target table
 28245 | unload ('select * from category') to 's3://dw-tickit/manifes
 28240 | select query, substring(text,1,40) from stl_querytext where 
(6 rows)
```

### Reconstruction de SQL stocké
<a name="r_STL_QUERYTEXT-reconstruct-sql"></a>

Pour reconstruire le SQL stocké dans la colonne `text` de STL\$1QUERYTEXT, exécutez une instruction SELECT pour créer SQL depuis une ou plusieurs parties de la colonne `text`. Avant d’exécuter le SQL reconstruit, remplacez tout caractère spécial (`\n`) par un saut de ligne. Le résultat de l’instruction SELECT suivante se compose de lignes de SQL reconstruit dans le champ `query_statement`.

```
SELECT query, LISTAGG(CASE WHEN LEN(RTRIM(text)) = 0 THEN text ELSE RTRIM(text) END) WITHIN GROUP (ORDER BY sequence) as query_statement, COUNT(*) as row_count 
FROM stl_querytext GROUP BY query ORDER BY query desc;
```

Par exemple, la requête suivante sélectionne 3 colonnes. La requête elle-même contient plus de 200 caractères et est stockée dans plusieurs parties de STL\$1QUERYTEXT.

```
select
1 AS a0123456789012345678901234567890123456789012345678901234567890,
2 AS b0123456789012345678901234567890123456789012345678901234567890,
3 AS b012345678901234567890123456789012345678901234
FROM stl_querytext;
```

Dans cet exemple, la requête est stockée dans plusieurs parties (lignes) de la colonne `text` de STL\$1DDLTEXT.

```
select query, sequence, text
from stl_querytext where query=pg_last_query_id() order by query desc, sequence limit 10;
```

```
query  | sequence |                                                                                             text                                                                                                   
-------+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    45 |        0 | select\n1 AS a0123456789012345678901234567890123456789012345678901234567890,\n2 AS b0123456789012345678901234567890123456789012345678901234567890,\n3 AS b012345678901234567890123456789012345678901234
    45 |        1 | \nFROM stl_querytext;
```

Pour reconstruire le SQL stocké dans STL\$1QUERYTEXT, exécutez le SQL suivant. 

```
select LISTAGG(CASE WHEN LEN(RTRIM(text)) = 0 THEN text ELSE RTRIM(text) END, '') within group (order by sequence) AS text 
from stl_querytext where query=pg_last_query_id();
```

Pour utiliser le SQL reconstruit qui en résulte dans votre client, remplacez tout caractère spécial (`\n`) par un saut de ligne. 

```
                                                                                                             text                                                                                                             
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 select\n1 AS a0123456789012345678901234567890123456789012345678901234567890,\n2 AS b0123456789012345678901234567890123456789012345678901234567890,\n3 AS b012345678901234567890123456789012345678901234\nFROM stl_querytext;
```