Bonjour,

J'ai une base de données RADIOLOGIE avec 565 000 données.
La base temporaire rados_mediweb contient 107 000 données.

Il y a un index sur la table rados_mediweb

Voila ma requete SQL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
UPDATE radiologie r
		SET r.id_demande =(SELECT m.remissnr
							FROM rados_mediweb m
							WHERE r.id_demande2 = m.remissnr
							AND r.type_examen = m.undtyp
							AND r.date_prescription = m.date_presc)			 
		WHERE EXISTS (  SELECT m.remissnr
						FROM rados_mediweb m
						WHERE  r.id_demande2 = m.remissnr					 
						AND r.type_examen = m.undtyp
						AND r.date_prescription = m.date_presc);

Voici l'explan plan de cette requete sql :

Operation Object Name

UPDATE STATEMENT Optimizer Mode=CHOOSE
UPDATE MEDIWEB_OPE.RADIOLOGIE
FILTER
TABLE ACCESS FULL MEDIWEB_OPE.RADIOLOGIE
TABLE ACCESS FULL MEDIWEB_OPE.RADOS_MEDIWEB
TABLE ACCESS FULL MEDIWEB_OPE.RADOS_MEDIWEB
Comment puis je améliorer la requete SQL ?

Merci