Bonjour,
J'ai un petit probleme. J'ai une table avec des articles et des categories.
article_id, cat_id
J'aimerais selectionner 3 articles par categories
donc j'ai la requete suivante :
Le probleme c'est que la requete prend 4 secondes !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT a1.* FROM article a1 LEFT OUTER JOIN article a2 ON (a1.cat_id = a2.cat_id AND a1.price < a2.price) GROUP BY a1.article_id HAVING COUNT(*) < 3;
Y'a moyen de fire mieux ? ou bien je devrais utiliser une vue issue de cette requete ?
Une vue serais elle plus performante a la longue ?
edit : bon ok, la vue est aussi lente ! Et pas moyen de faire de vue materialise sur postgresql 8.4 je crois ...
Si vous avez une autre solution je suis preneur
Partager