Probleme de perfs sur une requête
Bonjour,
Comment peut-on expliquer que ces deux requêtes ont un temps d'exécution
totalement différent :
SELECT DISTINCT PROFIL_ID, POSBT.SICOVAM, POSBT.FAIRVALUE, PRIX.THEO,
POS.FAIRVALUE, POSBT.QUANTITY, POSBT.COD_PORT, POSBT.COD_DEVISE, '20070806',
GETDATE()
FROM IMP_VAR_DETAIL_POS_BT_CORRIGE POSBT, REF_PORT_SOURCE_HISTORIQUE RPS,
IMP_SOPH_PRIX PRIX, IMP_VAR_DETAIL_POS_GEN_CORRIGE POS
WHERE RPS.DAT_PRO_UTIL = '20070806'
AND POSBT.DAT_PRO = '20070806'
AND PRIX.DAT_PRO = '20070806'
AND POS.DAT_PRO = '20070806'
AND SOURCE = 'SOPHIS'
AND POSBT.COD_PORT = RPS.COD_PORT
AND POSBT.SICOVAM *= SIC_INSTR
AND POSBT.QUANTITY <> 0
AND POSBT.COD_PORT = POS.COD_PORT
AND POSBT.SICOVAM = POS.SICOVAM
AND POSBT.QUANTITY = POS.QUANTITY
DECLARE @DAT_PRO varchar(8)
SELECT @DAT_PRO = '20070806'
SELECT DISTINCT PROFIL_ID, POSBT.SICOVAM, POSBT.FAIRVALUE, PRIX.THEO,
POS.FAIRVALUE, POSBT.QUANTITY, POSBT.COD_PORT, POSBT.COD_DEVISE, '20070806',
GETDATE()
FROM IMP_VAR_DETAIL_POS_BT_CORRIGE POSBT, REF_PORT_SOURCE_HISTORIQUE RPS,
IMP_SOPH_PRIX PRIX, IMP_VAR_DETAIL_POS_GEN_CORRIGE POS
WHERE RPS.DAT_PRO_UTIL = @DAT_PRO
AND POSBT.DAT_PRO = @DAT_PRO
AND PRIX.DAT_PRO = @DAT_PRO
AND POS.DAT_PRO = @DAT_PRO
AND SOURCE = 'SOPHIS'
AND POSBT.COD_PORT = RPS.COD_PORT
AND POSBT.SICOVAM *= SIC_INSTR
AND POSBT.QUANTITY <> 0
AND POSBT.COD_PORT = POS.COD_PORT
AND POSBT.SICOVAM = POS.SICOVAM
AND POSBT.QUANTITY = POS.QUANTITY
merci
Bonne journée
Brigitte
|