Diferentes formas de un select

18/12/2004 - 05:49 por yoli garcia | Informe spam
Hola

Cual seria la diferencia entre estos dos tipos de select, cual es mas rapido
o eficiente ?
*asumiento que hacen lo mismo. Si no favor aclararme

a) select a.doc, (select count(*) from docs b where b.doc a.doc and b.stat=1 ) as veces1 from docs a

b) select a.doc, count(b.doc) as veces1
from docs a left outer join docs b on a.doc=b.doc
where b.stat=1 group by 1
 

Leer las respuestas

#1 Tinoco
17/12/2004 - 18:05 | Informe spam
Hola Yoly,

Deberia ser mas eficiente el Select (B), pero la eficiencia depende mucho de
los datos en la tabla, su uso, y los indices configurados en la tabla, un
indice por el campo DOC ayudaria mucho. Creo que el B es mejor porque tiene
una sola consulta y el where ayuda a simplificar el conjunto de datos.

Espero haber ayudado.

Hermilson Tinoco.
MCDBA, MCSD
Colombia


"yoli garcia" wrote:

Hola

Cual seria la diferencia entre estos dos tipos de select, cual es mas rapido
o eficiente ?
*asumiento que hacen lo mismo. Si no favor aclararme

a) select a.doc, (select count(*) from docs b where b.doc > a.doc and b.stat=1 ) as veces1 from docs a

b) select a.doc, count(b.doc) as veces1
from docs a left outer join docs b on a.doc=b.doc
where b.stat=1 group by 1








Preguntas similares