J'ai une table A contenant des données et des codes correspondant à des
libellés se trouvant dans d'autres tables B C et D.
Lorsque je travaille avec une seule requete pour exploiter la table A,
j'utilise des liaisons pour afficher directement les libelles correspondant
aux codes.
Si je travaille en plusieurs temps, j'effectue les calculs en gardant les
codes des libellés, puis je renvoie une requete pour avoir les libelles.
La seconde méthode est bien plus rapide.
Est ce normal, ou y a t il une methode pour que la requete soit plus rapide
dans le premier cas.
table A
{
codeuser;
largeur,
longueur,
epaisseur,
codearticle,
date}
table B (codeuser,nomuser)
table C(codearticle,nomarticle)
une seule requete:
select
sum(a.largeur),sum(a.longueur),sum(a.epaisseur),b.nomuser,c.nomarticle from
A a,B b,C c where
a.codeuser=b.codeuser and a.codearticle = b.codearticle and
date > datedebut and date < datefin group by a.codeuser,a.codearticle
plusieurs requetes:
select sum(largeur),sum(longueur),sum(epaisseur),codeuser,codearticle from A
where
date > datedebut and date < datefin group by codeuser,codearticle
pour chaque article et user
select b.nomuser from B b,A a where a.codeuser=b.codeuser
select b.nomarticle from B b,A a where a.codearticle=b.codarticle
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Khône
Salut
j'utilise mysql avec php.
Moi aussi
La seconde méthode est bien plus rapide.
Je trouve également
Est ce normal, ou y a t il une methode pour que la requete soit plus
rapide
dans le premier cas.
A priori MySQL est réputé pour être rapide sur les requêtes SELECT mais pas pour être une flèche en jointure. Au risque de faire hurler les SQLiens, pour mes développements je n'utilise que des requêtes successives sans jointure (les tables sont créées avec des index judicieusement placés) et ça tourne très bien
Khône
Salut
j'utilise mysql avec php.
Moi aussi
La seconde méthode est bien plus rapide.
Je trouve également
Est ce normal, ou y a t il une methode pour que la requete soit plus
rapide
dans le premier cas.
A priori MySQL est réputé pour être rapide sur les requêtes SELECT mais
pas pour être une flèche en jointure.
Au risque de faire hurler les SQLiens, pour mes développements je n'utilise
que des requêtes successives sans jointure (les tables sont créées avec des
index judicieusement placés) et ça tourne très bien
Est ce normal, ou y a t il une methode pour que la requete soit plus
rapide
dans le premier cas.
A priori MySQL est réputé pour être rapide sur les requêtes SELECT mais pas pour être une flèche en jointure. Au risque de faire hurler les SQLiens, pour mes développements je n'utilise que des requêtes successives sans jointure (les tables sont créées avec des index judicieusement placés) et ça tourne très bien