Oracle - Explain plan

 
Vista:

Explain plan

Publicado por eljhonb (5 intervenciones) el 21/01/2006 03:26:19
SELECT c.cedula, c.nombre
FROM cliente c
WHERE NOT EXISTS
( SELECT /*+hash_aj*/ cliente
FROM factura f
WHERE f.cliente=c.cedula)
ORDER BY c.cedula;

Execution Plan
-----------------------------------------------------------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=33 Card=251 Bytes=12299)

1 0 SORT (ORDER BY) (Cost=33 Card=251 Bytes=12299)
2 1 FILTER
3 2 TABLE ACCESS (FULL) OF 'CLIENTE' (Cost=23 Card=251 Bytes=12299)
4 2 TABLE ACCESS (FULL) OF 'FACTURA' (Cost=35 Card=1 Bytes=13)

Cómo se explica ese plan de ejecución, es decir que hace paso a paso. No se como interpretarlo y lo necesito Urgente.
Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Explain plan

Publicado por chemian (75 intervenciones) el 25/01/2006 16:30:51
Primero te dice el coste que tiene el order by, y por lo que veo, no utiliza ningun indice para esta ordenacion.
Despues analiza el acceso a la consulta principal, sobre la tabla cliente, el cual es un full scan, es decir que recorre toda la tabla en busca de los datos que necesita, o lo que es lo mismo, no accede a traves de indice.
Por ultimo analiza el acceso a la subconsulta, el cual tampoco es por indice.

Si lo que quieres es que el coste sea menor, piensa en crear un incice sobre el campo cliente en la tabla factura. y en la tabla cliente, sobre el campo de relacion entre factura y cliente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar