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.
Affiche le plan EXPLAIN pour une requête qui a été soumise à exécution.
SYS_QUERY_EXPLAIN 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.
Colonnes de la table
Nom de la colonne | Type de données | Description |
---|---|---|
user_id | entier | Identificateur de l’utilisateur qui a envoyé la requête. |
query_id | bigint | Identificateur de requête. Les informations de requête détaillées sont stockées dansSYS_QUERY_HISTORY. |
child_query_séquence | entier | La séquence de la requête utilisateur réécrite, en commençant par 1. |
plan_node_id | entier | Identifiant d'un nœud de plan mappé à une ou plusieurs étapes de la requête. |
plan_parent_id | entier | Identifiant du nœud parent du nœud du plan. Un nœud parent peut avoir plusieurs nœuds enfants. Par exemple, une jointure par fusion est le nœud parent des scans sur les tables jointes. |
plan_node | character(400) | Texte du nœud de la sortie EXPLAIN. Les nœuds de plan qui font référence à l'exécution sur des nœuds de calcul sont préfixés par XN dans la sortie EXPLAIN. |
info_nœud | character(400) | Informations de qualificateur et de filtre pour le nœud de plan. Par exemple, les conditions de jointure et les restrictions clause WHERE sont incluses dans cette colonne. |
Exemples de requêtes
L'exemple suivant est le plan EXPLAIN d'une seule requête.
SELECT * FROM sys_query_explain WHERE query_id = 612635 ORDER_BY plan_node_id;
userid | query_id | child_query_sequence | plan_node_id | plan_parent_id | plan_node | plan_info
--------+----------+----------------------+--------------+----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
100 | 612635 | 1 | 1 | 0 | XN Limit (cost=3604047533041.00..3604047533041.25 rows=100 width=20) |
100 | 612635 | 1 | 2 | 1 | -> XN Merge (cost=3604047533041.00..3604047533148.02 rows=42809 width=20) | Merge Key: sum(b.totalprice)
100 | 612635 | 1 | 3 | 2 | -> XN Network (cost=3604047533041.00..3604047533148.02 rows=42809 width=20) | Send to leader
100 | 612635 | 1 | 4 | 3 | -> XN Sort (cost=3604047533041.00..3604047533148.02 rows=42809 width=20) | Sort Key: sum(b.totalprice)
100 | 612635 | 1 | 5 | 4 | -> XN HashAggregate (cost=2604047529640.76..2604047529747.78 rows=42809 width=20) |
100 | 612635 | 1 | 6 | 5 | -> XN Hash Join DS_DIST_NONE (cost=15104956.16..2602364653507.34 rows=336575226684 width=20) | Hash Cond: (("outer".listid = "inner".listid) AND ("outer".sellerid = "inner".sellerid))
100 | 612635 | 1 | 7 | 6 | -> XN Seq Scan on listing b (cost=0.00..7884677.12 rows=788467712 width=24) |
100 | 612635 | 1 | 8 | 6 | -> XN Hash (cost=7063797.76..7063797.76 rows=706379776 width=8) |
100 | 612635 | 1 | 9 | 8 | -> XN Seq Scan on sales a (cost=0.00..7063797.76 rows=706379776 width=8) |
(9 rows)