Problème de SUM dans jointure BaseSQL
Bonjour,
J'ai un problème pour effectuer deux sommes des minutes de deux bases indépendantes en fonction du id_projet de ces deux bases.
Voici ci-dessous la présentation de mes bases de données SQL
Base1: "pointage_projet"
+----+------------+---------------+----------------+------------------+
| id | initiale | date | id_projet | minutes |
+----+------------+---------------+----------------+------------------+
| 1 | MC | 2016-12-01 | 2 | 12 |
| 2 | STS | 2016-11-30 | 1 | 50 |
| 3 | MC | 2016-11-30 | 1 | 20 |
| 4 | DC | 2016-11-29 | 3 | 30 |
Base2: "pointage_projet_2"
+----+------------+---------------+----------------+------------------+
| id | id_ouv | date | id_projet | minutes |
+----+------------+---------------+----------------+------------------+
| 1 | 3 | 2016-12-02 | 1 | 10 |
| 2 | 2 | 2016-12-01 | 1 | 5 |
| 3 | 3 | 2016-11-29 | 2 | 25 |
| 4 | 5 | 2016-11-29 | 3 | 50 |
Base3: "projet"
+----+----------------+-------------------------+----------------+
| id | numprojet | description | id_client |
+----+----------------+-------------------------+----------------+
| 1 | AAA1 | Description projet 1 | 1 |
| 2 | BBB2 | Description projet 2 | 1 |
| 3 | CCC3 | Description projet 3 | 2 |
Base4: "client"
+----+-------------------+
| id | nomclient |
+----+-------------------+
| 1 | Client 1 |
| 2 | Client 2 |
| 3 | Client 3 |
Voici actuellement ma requête:
Code:
1 2 3 4 5 6 7 8 9
| SELECT p.id_projet, j.id_client, j.numprojet, j.description, c.nomclient,
SUM(p.minutes) AS SommeMinutesBE,
SUM(o.minutes) AS SommeMinutesAT
FROM pointage_projet as p
LEFT JOIN pointage_projet_2 as o ON o.id_projet = p.id_projet
LEFT JOIN projets as j ON j.id = p.id_projet
LEFT JOIN clients as c ON c.id = j.id_client
WHERE numprojet = 'AAA1'
GROUP BY j.numprojet |
Je souhaiterais avoir dans "SommeMinutesBE" la valeur 70 (minutes) et dans "SommeMinutesAT" la valeur 15 (minutes) mais ce n'est pas le cas.
La valeur dans SommeMinutesBE est multipliée par le nombre de id_projet identique qu'il à trouver dans la 2e base. Donc cette requête n'est pas correcte, pouvez-vous m'aider ?
Comment faire dans ce cas ?
D'avance merci
Steph