Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Problemas con In en TIBQuery (https://www.clubdelphi.com/foros/showthread.php?t=4431)

Rabata 15-10-2003 10:03:52

Problemas con In en TIBQuery
 
Saludos a todos.

Mi Pregunta es la Siguiente:

Tengo una base de datos con unas 3000 polizas en la k tengo 2 tablas referenciadas: poliza, poliza_log, las cuales poliza es la principal(master) y poliza_log es la visa de la poliza (Detail), por lo tanta para saber la situación de la póliza actual deberé sacar el ultimo valor insertado en Poliza_Log (Ya que lo hago con Generadores), sería algo así:

Listado de todal las polizas:

SELECT cod_poliza,
importe_prima_neta,
fecha_efecto,
vigor
FROM poliza_log
WHERE cod_subpoliza IN
(SELECT MAX(cod_subpoliza)
FROM poliza_log
GROUP BY cod_poliza)

Bueno pues esta consulta me tarda unos 2 minutos (disparatado), mi pregunta es cómo `puedo acelerar esta consulta ya k por lo visto kien me lo ralentiza es el 'In'.

La Base de datos tiene su integridad referencial y claves primarias, debería utilizar algún otro índice, pero el campo por el k hago In es clave primaria de Poliza_Log

Gracias a Todos por Vuestra Increible Colaboración.

__cadetill 15-10-2003 13:56:59

bueno, de echo no es el in el que te lo relentiza (creo). Más bien es la subconsulta que lanzas.

Para accelerarlo, quizás te sirva una select así

Código:

SELECT cod_subpoliza, cod_poliza,
      importe_prima_neta, fecha_efecto, vigor
FROM poliza_log
ORDER BY cod_subpoliza DESC

y coges el primer registro de la select


La franja horaria es GMT +2. Ahora son las 10:10:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi