Bonsoir à tous,
Voici 6 tables qui pourront être jointe par des PK et des FK dans une requête.
Tantôt on a besoin que de joindre TABLE1 et TABLE2 tantôt quatre tables ou les six tables. On extrait des informations de TABLE6 et peut-être qu'en même temps on a besoin d'une information de TABLE1 ou de TABLE2 enfin bref.
Ce que je souhaiterais savoir, c'est, afin de réduire le nombre de requête ne serait-il pas plus approprié d'élaborer une vue joignant les 6 tables ou même plus ? :
De laquelle on extrait les informations (et pas forçément toutes) au besoins :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 CREATE VIEW vwListe( CHAMP1, CHAMP2, CHAMP3, CHAMP4, CHAMP5, CHAMP6) AS SELECT T1.CHAMP1,T2.CHAMP2,T3.CHAMP3,T4.CHAMP4,T5.CHAMP5, T6.CHAMP6 FROM TABLE1 T1 INNER JOIN TABLE2 T2 ON T1.CHAMP1=T2.CHAMP2 INNER JOIN TABLE3 T3 ON T2.CHAMP2=T3.CHAMP3 INNER JOIN TABLE4 T4 ON T3.CHAMP3=T4.CHAMP4 INNER JOIN TABLE5 T5 ON T4.CHAMP4=T5.CHAMP5 INNER JOIN TABLE6 T6 ON T5.CHAMP5=T6.CHAMP6 ................................................................... ...................................................................
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT CHAMP1,CHAMP2 FROM vwListe
au lieu de construire séparement :
Requete_1=SELECT CHAMP1,CHAMP2 FROM TABLE1 INNER JOIN TABLE2
Requete_2=SELECT CHAMP2,CHAMP3 FROM TABLE2 INNER JOIN TABLE3
Requete_n=....................................
Qu'en sera-t-il des performances si on fait appel tout le temps à cette vue au lieu de ces requêtes ?
Merci pour vos informations.
Partager