MYSQL ORDER BY... somme de colonnes


HawkEye
WRInaute accro
WRInaute accro
 
Messages: 17013
Inscription: 23 Fév 2004

MYSQL ORDER BY... somme de colonnes

Message le Jeu Jan 07, 2010 2:58

Hello les WRInautes...

Une fois n'est pas coutume, je cherche à faire un truc tordu pour faire chauffer du cuivre... et je me perds dans la doc.

Je voudrais faire une requête SELECT sur une table et deux jointures, et classer les résultats en fonction de la somme de deux colonnes issues de chacune des jointures.

De base, on a ceci:

Code: Tout sélectionner
SELECT
`table_a`.`data`,
`table_b`.`info_a`,
`table_c`.`info_b`

FROM

`table_a`

LEFT JOIN `table_b` ON `table_a`.`id` = `table_b`.`id`
LEFT JOIN `table_c` ON `table_a`.`id` = `table_c`.`id`

WHERE `table_a`.`id` = 1


...et je voudrais arriver à faire une sorte de ORDER BY SUM(`table_b`.`score` + `table_c`.`score`) mais bien sûr... 'a marche pas :roll:

Si l'un de vous a une solution... elle est bienvenue !!!


HawkEye
WRInaute accro
WRInaute accro
 
Messages: 17013
Inscription: 23 Fév 2004

Re: MYSQL ORDER BY... somme de colonnes

Message le Jeu Jan 07, 2010 3:04

Ma g*

Code: Tout sélectionner
SELECT
`table_a`.`data`,
`table_b`.`info_a`,
`table_c`.`info_b`

(`table_b`.`score` + `table_c`.`score`) AS `score`

FROM

`table_a`

LEFT JOIN `table_b` ON `table_a`.`id` = `table_b`.`id`
LEFT JOIN `table_c` ON `table_a`.`id` = `table_c`.`id`

WHERE `table_a`.`id` = 1

ORDER BY `score` DESC


Voilà voilà... :roll:


-amethyste-
WRInaute discret
WRInaute discret
 
Messages: 52
Inscription: 26 Fév 2008

Re: MYSQL ORDER BY... somme de colonnes

Message le Jeu Jan 07, 2010 12:08

Exact, SUM ne permettant d'additionner que les enregistrements d'une colonne.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité