J'ai une quantité de nom de colonne, unit_price et total_amount. Le champ total_amount dans ma base de données mis à zéro, dans ma requête j'ai utilisé SUM (unité_price * quantité) AS total_amount pour obtenir la valeur totale comme total_amount. Mais quand j'ai essayé d'obtenir la somme du montant total comme total_sum est toujours 0. est-ce parce que le champ total_amount dans ma base de données est mis à zéro? Ce que je veux faire, c'est obtenir la somme (total_amount) AS total_sum mais il affiche toujours 0.Comment obtenir la somme de la colonne de la table?
Ceci est ma requête.
<?php
$mysqli = new mysqli("localhost", "root", "", "app");
$term = $_GET['supp'];
$result = $mysqli->query("SELECT *, SUM(unit_cost*quantity) AS total_amount FROM procurement WHERE supplier LIKE '%".$term."%' GROUP BY counter");
echo'<table id="tfhover" cellspacing="0" class="tablesorter" style="text-transform:uppercase;" border="1px">
<thead>
<tr>
<th>SUPPLIER</th>
<th>ITEM</th>
<th>DESCRIPTION</th>
<th>QTY</th>
<th>UNIT</th>
<th>UNIT PRICE</th>
<th>Total Amount</th>
</tr>
</thead>';
echo'<tbody>';
while($row = $result->fetch_assoc()){
echo'<tr>
<td>'.$row['supplier'].'</td>
<td>'.$row['item_name'].'</td>
<td>'.$row['item_description'].'</td>
<td>'.$row['quantity'].'</td>
<td>'.$row['unit'].'</td>
<td>'.number_format($row['unit_cost'], 2, '.', ',').'</td>
<td>'.number_format($row['total_amount'], 2, '.', ',').'</td>
</tr>';
}
echo'<TR> <TD COLSPAN=6 BGCOLOR="#99CCFF">TOTAL AMOUNT</TD> <td>'.number_format($row['total_sum'], 2, '.', ',').'</td></TR>';
echo "</tbody></table>";
?>
Mon autre problème est quand j'insérer ce 'TOTAL' .number_format écho de code ($ row [ 'de total_sum'], 2,, ' ' '')''. à l'intérieur de la boucle while. Je veux avoir seulement 1 rangée de montant total.
Vous devriez lire ce lien http://beginner-sql-tutorial.com/sql-group-by-clause.htm –