Ver Mensaje Individual
  #20  
Antiguo 04-08-2010
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Reputación: 24
guillotmarc Va por buen camino
Hola.

Los índices que debes tener para acelerar esa consulta estan muy claros.

Para registro__ecografia, necesitas un índice sobre nro__recibo

Para ecografia necesitas un índice sobre nro

Para recibo te recomiendo un índice simple sobre fecha.

A la vista del filtro en el WHERE te recomiendo ese índice simple, pero dado que haces una conversión del campo antes de evaluarlo, estás impediendo que el optimizador use un índice. Por ello tienes que cambiar esa parte de la consulta, por el equivalente sin conversiones.

Es decir, cambia el :

(cast(r.fecha as date) between :f1 and :f2)

Por su equivalente :

(r.fecha between :f1 and :f2 + 1 and r.fecha <> :f2 + 1)

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita