Bonjour à tous !
Je dois faire une somme un peu spéciale avec une de mes tables.
Pour simplifier, la table pourrait ressembler à cela :
Je dois faire la somme de (nombre) pour chaque id_activite (qu'il soit dans la colonne id_activite, ou id_activite_bis entre deux #). Actuellement je le fait grâce à une variable, avec WHERE id_activite='$id' OR id_activite_bis LIKE '#$id#', et ça fonctionne sans problème.
Cependant, je dois faire cette somme pour plusieurs id_activite, et chaque requête est un peu longue. J'aimerais donc précharger toutes les sommes dans un tableau dès le début, auquel cas je n'ai plus de variable $id. L'idée serait donc de passer par un GROUP BY.
Seulement je ne sais pas comment ajouter id_activite et id_activite_bis dans un même group by.
J'ai essayé cela :
mais le problème est que seules les lignes avec le id_activite et id_activite_bis équivalents sur la même ligne sont retournées. (3eme ligne dans mon exemple : 3 et #3# sont sur la même ligne).
Merci de votre aide, j'espère avoir été clair !
Je dois faire une somme un peu spéciale avec une de mes tables.
Pour simplifier, la table pourrait ressembler à cela :
Code:
id nombre id_activite id_activite_bis
110 10 1 #5#
111 20 2 #1#
112 30 3 #3#
Je dois faire la somme de (nombre) pour chaque id_activite (qu'il soit dans la colonne id_activite, ou id_activite_bis entre deux #). Actuellement je le fait grâce à une variable, avec WHERE id_activite='$id' OR id_activite_bis LIKE '#$id#', et ça fonctionne sans problème.
Cependant, je dois faire cette somme pour plusieurs id_activite, et chaque requête est un peu longue. J'aimerais donc précharger toutes les sommes dans un tableau dès le début, auquel cas je n'ai plus de variable $id. L'idée serait donc de passer par un GROUP BY.
Seulement je ne sais pas comment ajouter id_activite et id_activite_bis dans un même group by.
J'ai essayé cela :
Code:
SELECT SUM(id_compte), id_activite
FROM matable
where id_activite_bis like '#'+CAST(id_activite as varchar)+'#'
group by id_activite
mais le problème est que seules les lignes avec le id_activite et id_activite_bis équivalents sur la même ligne sont retournées. (3eme ligne dans mon exemple : 3 et #3# sont sur la même ligne).
Merci de votre aide, j'espère avoir été clair !