无法从选定的重复id(PHP)和(MySQL)中获取总和的值
我试图从以前在表单中选择的重复值列中得到一个和,但我甚至不能显示结果,这个代码有什么问题吗 数据库结构 卡罗斯表 -身份证 -母体 -马卡 表movimentos -身份证 -母体 -马卡 -福内切多 -蒂波 -德斯佩萨 -观察家 我在文件verificar.dwt.php中有一个表单,它包含一个下拉列表,其中包含表carros中matricula中的所有值,当它选择相应的matricula时,它会转到extra 1.dwt.php,其中显示一个表,其中包含具有相同matricula值的所有重复行 我现在要展示的是重复行的总和无法从选定的重复id(PHP)和(MySQL)中获取总和的值,php,mysql,sum,Php,Mysql,Sum,我试图从以前在表单中选择的重复值列中得到一个和,但我甚至不能显示结果,这个代码有什么问题吗 数据库结构 卡罗斯表 -身份证 -母体 -马卡 表movimentos -身份证 -母体 -马卡 -福内切多 -蒂波 -德斯佩萨 -观察家 我在文件verificar.dwt.php中有一个表单,它包含一个下拉列表,其中包含表carros中matricula中的所有值,当它选择相应的matricula时,它会转到extra 1.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;
}
如果不了解您使用的表格的内容,我认为任何人都无法帮助您 但是: 似乎是你总结的核心,它不包含任何类似于matricula的帖子
如果我是你,我会从回显所有SQL开始,并从中找出你真正需要做的事情。在你的第一个查询中,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}");
如果要显示它,则必须在行下的列上显示它,但在显示它之前关闭了行属性,这可能会造成问题
$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');
数据库结构是什么?如果不知道数据库布局,很难说。在执行SELECT SUMvalue时,似乎没有过滤任何内容,这将检索表中所有值的总和。在运行查询之后,您可能还想检查mysql_error的值。用户从一个表中选择一个矩阵,在表MOVIMONOS中,该矩阵的每个重复值都有一个despesa,我想得到所选矩阵的重复despesa之和。听起来很混乱吗?你确定它没有打印$sum吗?它看起来不错,但您似乎正在表的行之间打印它,所以您的浏览器可能无法按预期显示它。看一看你的HTML源代码,看看它是否真的在那里。我让它打印$sum,但现在它只显示列despesa中的总数,而不是重复的Matricular2despesa的despesa之和是表movimentosin中的一列。在这种情况下,你的查询就像$result1=mysql\u query'SELECT SUMdespesa AS值_movimentos'的总和;通过这个,我得到的是表movimentos中所有id的和,我想要的是得到表movimentos中重复矩阵的值despesa,通过这个,你将得到despesa的和。如果需要重复值之和,请将having子句与group by子句一起使用。从movimentos group by matricula having COUNTMARTICULA>1中选择SUMDESSA作为值_sum
$result1 = mysql_query('SELECT SUM(despesa) AS value_sum FROM Tablename');