Obtener los nombres de columna con los nombres de tabla en Oracle SQL desde el plan de ejecución como una tabla.
Necesito recuperar los nombres de las columnas con el nombre de la tabla del plan de ejecución. Puedo ver el plan de explicación y ver la proyección de columnas, pero no puedo recuperar esta parte porque no es una tabla. ¿Existe alguna tabla que contenga el plan de ejecución en algún formato, por ejemplo XML o formato de relación?
Adicionalmente: “SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY())” no ayuda porque esto devuelve el resultado en una sola columna.
davy.ai
Para recuperar los nombres de columna con los nombres de tabla de un plan de ejecución, puedes seguir los siguientes pasos:
DBMS_XPLAN
:La vista
all_projections
contiene información sobre las columnas de proyección utilizadas en el plan de ejecución. La columnaobject_name
contiene el nombre de la tabla/vista utilizada en la proyección, mientras que la columnacolumn_name
contiene el nombre de la columna de proyección.Ten en cuenta que la salida de
EXPLAIN PLAN
puede que no siempre contenga los nombres reales de las tablas, especialmente si hay expresiones complejas involucradas. En esos casos, es posible que necesites analizar manualmente la consulta y el plan de ejecución para entender qué columnas corresponden a qué tablas.