我试图从之前在表单中选择的重复值的列中获取总和,但我甚至无法显示结果,此代码是否有问题?
数据库结构
表卡罗斯我在文件“verificar.dwt.php”中有一个表单,其中包含一个下拉列表,其中包含“matricula”中的所有值(来自表carros),当它选择相应的“matricula”时,它将转到“extra1” .dwt.php“它显示一个表,其中所有重复的行具有相同的”matricula“值。
我现在想要显示的是重复行的总和。
<a href='verificar.dwt.php'>Voltar atrás</a>
<div align="center"><?
include 'configmov.dwt.php';
$tableName='movimentos';
$matricula = mysql_real_escape_string($_POST['matricula']);
$sql="SELECT matricula, marca, despesa FROM ".$tableName." WHERE matricula = '".$matricula."'";
$result=mysql_query($sql);
$result1 = mysql_query('SELECT SUM(value) AS value_sum FROM despesa');
$row1 = mysql_fetch_assoc($result1);
$sum = $row1['value_sum'];
$n=1;
echo "Os seus resultados: <p>";
echo "<table border=0>";
echo "<tr bgcolor='#CCFFCC'>";
echo "<td style='width: 100px;'>Matricula</td>";
echo "<td style='width: 100px;'>Marca</td>";
echo "<td style='width: 100px;'>Despesa</td>";
echo "</tr>";
while($row = mysql_fetch_array($result)){
echo "<tr bgcolor='#CCCCCC'>";
echo "<td style='width: 100px;'>".$row['matricula']."</td>";
echo "<td style='width: 100px;'>".$row['marca']."</td>";
echo "<td style='width: 100px;'>".$row['despesa']."</td>";
echo "</tr>";
echo $sum;
}
答案 0 :(得分:1)
如果不了解您使用的表格的内容,我认为任何人都无法帮助您。
可是:
SELECT SUM(value) AS value_sum FROM despesa
似乎是你总结的核心,它不包含任何发布内容(如matricula)。
如果我是你,我首先回应所有的SQL并从中找出你真正需要做的事情。
答案 1 :(得分:1)
如果你想要显示它,那么你必须在一行下的列上显示它,但是在显示它之前你关闭了你的row属性可能会产生问题。还有一件事你把这个查询放在
$result1 = mysql_query('SELECT SUM(value) AS value_sum FROM despesa');
是despesa表名?因为我认为它是colname,如果它是colname那么你的查询应该是这样的
$result1 = mysql_query('SELECT SUM(despesa) AS value_sum FROM Tablename');
答案 2 :(得分:0)
在您的第一个查询中,despesa是一列
$sql="SELECT matricula, marca, despesa FROM ".$tableName." WHERE matricula = '".$matricula."'";
所以我想这是
的内容$result1 = mysql_query('SELECT SUM(value) AS value_sum FROM despesa');
你应该使用
$result1 = mysql_query("SELECT SUM(despesa) AS value_sum FROM {$tableName}");