Guitariff | Bonjour à tous,
Dans l'idée, ma requête SQL est la suivante :
Code :
- (SELECT artiste, sum(hit) AS hit FROM tabstxt GROUP BY artiste ORDER BY hit DESC LIMIT $limite)
- UNION
- (SELECT artiste, sum(hit) AS hit FROM tabsgp GROUP BY artiste ORDER BY hit DESC LIMIT $limite)
- GROUP BY artiste sum(hit) as hit ORDER BY hit DESC LIMIT $limite
|
Je souhaiterais donc qu'après que l'union ait été réalisé on groupe de nouveau par artiste puis qu'on récupère la somme des deux sum(hit) ...
Avez-vous une petite idée de la syntaxe d'une requête valide ?
Après avoir trainer sur quelques forum, on me propose (non fontionnel) :
Code :
- SELECT artiste, 1, sum(hit) AS hit FROM tabstxt
- GROUP BY artiste, 1
- UNION
- SELECT artiste, 2, sum(hit) AS hit FROM tabsgp
- GROUP BY artiste, 2
- UNION
- SELECT a.artiste, 3, sum(a.hit + b.hit) as hit FROM tabstxt a join tabsgp b on
- a.artiste = b.artiste
- GROUP BY a.artiste, 3
- ORDER BY a.artiste, 002 DESC
|
Merci de vos réponses.
Guitariff. |