Bonjour à tous,
je rencontre un problème d'optimisation d'une de mes requêtes. je souhaite afficher les séjours répartis par communes d'origines des patients pour un établissment et un GHM donné.
Voici les trois tables que j'intérroge dans ma requête :
Voici ma requete trop longue (plus de 30 sec) ainsi que son plan d'éxécution :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 select Code_geo, nb_sejour from Sejour s inner join GHM g on s.Id_GHM=g.Id_GHM inner join Etablissement e on e.id_etab=s.id_etab inner join Geo ge on s.id_geo=ge.id_geo where Code_GHM like '%C%' and finess like '690781810' group by Code_geo;
Le problème vient manifestement de la jointure avec la table Geo. En effet, quand j'affiche juste l'id_geo de la table sejour, mon temps d'execution passe sous la seconde
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 select id_geo, nb_sejour from Sejour s inner join GHM g on s.Id_GHM=g.Id_GHM inner join Etablissement e on e.id_etab=s.id_etab where Code_GHM like '%C%' and finess like '690781810' group by Code_geo;
Pour info, voici les show index des tables sejour et geo :
Sejour :
GEO :
Avez-vous des pistes de réflexion?
Partager