Bonjour,
Je dois faire une fonctionnalité qui affiche le montant investi par année pour le renouvellement et l’achat d’ordinateurs.
Le renouvellement et l'achat étant deux tables différentes j'ai donc fait deux requêtes différentes pour ensuite les sommer.
Cependant cela ne marche pas car les deux requêtes ne renvoient pas le même nombre de tuple.
Je ne sais pas comment faire pour résoudre le problème.
Voilà mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
$requete = "
SELECT Year(jour_mise_en_service) as Année, SUM(cout_achat) as cout
FROM Ordinateur
Group By Année
";
//on compte le montant investi chaque année pour les achats
 
$requete2 = "
SELECT Year(O.jour_mise_en_service) as Année, SUM(O.cout_achat) as cout2
FROM Ordinateur O, renouvellement R
WHERE R.nom_ordi=O.nom
AND R.type_traitement='changement effectué'
Group By Année
";
//on compte le montant investi pour le renouvellement en supposant que l'ordinateur ait la même valeur que lors de son achat
 
$resultat = mysql_query($requete) or die(mysql_error());
$resultat2 = mysql_query($requete2) or die(mysql_error());
 
print "<ul>";
while ($nuplet = mysql_fetch_assoc($resultat)  ) {
   //on somme ces deux couts
   $data = $nuplet['cout']+$nuplet['cout2'];
   print "<li>" .$data. " ".$nuplet['Année'];
   //et on les affiches selon l'année
   print "</li>";
}
print "</ul>";