Query rapida y Vista lenta
Posted by:
Alex Carol
Date: January 12, 2007 02:41AM
buenas,
he creado la siguiente vista
...........................................
CREATE OR REPLACE VIEW VFEDERACIOGENETSLLISTAT AS
SELECT F.CODIFEDERACIOGENET, F.CODIDEFLLICENCIAGENET, F.CODIPERSONA, F.CODIPOBLACIOENV,
F.DIAALTA, F.ANYY, F.DIASOLICITUD, F.IMPORT, F.DESCOMPTE, F.SEGURO,
F.ADRECAENV, F.NUMENV, F.PISENV, F.PORTAENV, F.OBSERVACIONS, F.DIACONFIRMACIO, F.DIAENVIAMENT,
F.DIAANULACIO, F.FORMAPAGAMENT,
D.COMPETIDOR, D.TECNIC, D.EDATMIN, D.EDATMAX,
D.PREUFCH, D.PREUSEGURO, D.PREURFHE, D.TELASSISTENCIA, D.NUMPOLISSA,
(SELECT P.CODIFEDERACIO FROM PERSONES AS P WHERE F.CODIPERSONA=P.CODIPERSONA) AS CODIFEDERACIO,
(SELECT CONCAT(P.COGNOM1,' ', P.COGNOM2, ', ',P.NOM) FROM PERSONES AS P WHERE F.CODIPERSONA=P.CODIPERSONA) AS COGNOMSNOM,
(SELECT SUM(P.IMPORTPAGAT) FROM PAGAMENTSLLGENETS AS P WHERE P.CODIFEDERACIOGENET=F.CODIFEDERACIOGENET) AS TOTALPAGAT
FROM DEFLLICENCIESGENETS AS D, FEDERACIOGENETS AS F FORCE INDEX (PRIMARY)
WHERE D.CODIDEFLLICENCIAGENET=F.CODIDEFLLICENCIAGENET;
..........................................................
el problema està en que la ejecución de la query de creación de la vista
......................................................................
SELECT F.CODIFEDERACIOGENET, F.CODIDEFLLICENCIAGENET, F.CODIPERSONA, F.CODIPOBLACIOENV,
F.DIAALTA, F.ANYY, F.DIASOLICITUD, F.IMPORT, F.DESCOMPTE, F.SEGURO,
F.ADRECAENV, F.NUMENV, F.PISENV, F.PORTAENV, F.OBSERVACIONS, F.DIACONFIRMACIO, F.DIAENVIAMENT,
F.DIAANULACIO, F.FORMAPAGAMENT,
D.COMPETIDOR, D.TECNIC, D.EDATMIN, D.EDATMAX,
D.PREUFCH, D.PREUSEGURO, D.PREURFHE, D.TELASSISTENCIA, D.NUMPOLISSA,
(SELECT P.CODIFEDERACIO FROM PERSONES AS P WHERE F.CODIPERSONA=P.CODIPERSONA) AS CODIFEDERACIO,
(SELECT CONCAT(P.COGNOM1,' ', P.COGNOM2, ', ',P.NOM) FROM PERSONES AS P WHERE F.CODIPERSONA=P.CODIPERSONA) AS COGNOMSNOM,
(SELECT SUM(P.IMPORTPAGAT) FROM PAGAMENTSLLGENETS AS P WHERE P.CODIFEDERACIOGENET=F.CODIFEDERACIOGENET) AS TOTALPAGAT
FROM DEFLLICENCIESGENETS AS D, FEDERACIOGENETS AS F FORCE INDEX (PRIMARY)
WHERE D.CODIDEFLLICENCIAGENET=F.CODIDEFLLICENCIAGENET;
.........................................................
tarda 0,017 segundos
y la ejecución de la vista
SELECT * FROM VFEDERACIOGENETSLLISTAT;
tarda 4,76 segundos, durante la ejecución de la vista veo como trabaja el HD.
Alguien sabe que passa?
Muchas graciasa por todo