Bonjour à tous,

N'ayant pas de grandes connaissances en SQL et encore moins en Linq, je rencontre un problème concernant le regroupage de champs et faire la somme de chacun d'entre eux.

Je m'explique en utilisant un exemple béta, j'ai une table :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
champ1,   champ2,   champ3,   champ4
 
   1           200         300          400
   2           100         500          150
   1           600          50           100
   3           700         375            25
   2           100         500          150
   1           50           100           89

Je cherche à regrouper les données dont le champ1 est égal à 1 et 3 et faire la somme des autres champs. Donc, prendre les lignes n° 1,3,4,6 et effectuer la somme des champs 2,3,4 répondant aux conditions pour obtenir ce résultat

champ2 = 1550, champ3 = 825, champ4 = 614

J'ai donc fait une requête ressemblant à ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
...
 
(from sa in maVue where champ1==1
|| champ1==3
group sa by champ1 into it
select new MaStructure
{
   total1 = it.Sum(p => p.champ2),
   total2 = it.Sum(p => p.champ3),
   total3 = it.Sum(p => p.champ4)
}
).FirstOrDefault();
....
Mais le résultat est erroné Quelqu'un pourrait-il éclairer ma lanterne car je suis un perdu

Merci d'avance pour vos réponses

Cordialement