我正在尝试减去一列的值。数据很大,所以我需要将其归档。查询有效,但未显示正确的结果。
首先,我选择过滤器,在其中输入高度和仓库(复选框用于允许对仓库进行多重选择)。
$debljina=[$_POST'debljina'];
Then I made query for warehouse
if (!empty($skladiste)) {
$sklad="SELECT `ReprMatId` FROM `jos_ib_repromaterijali` WHERE `ReprMatSkladiste` = '$skladiste[0]'";
if(sizeof($skladiste)>0){
for ($i=0; $i<sizeof($skladiste); $i++) {
$sklad.="OR ReprMatSkladiste = '$skladiste[$i]'";
}
}
}
echo "<table border='2' style='border-collapse: collapse;border-color: silver;'>";
echo "<tr style='font-weight: bold;'>";
echo "<td width='100' align='center'>Ukupna količina repromaterijala na skladištu DEBLJINA: $debljina (kg)</td>";
$total = " SELECT SUM(ReprMatTrenutnaKolicina) FROM `jos_ib_repromaterijali` WHERE `ReprMatDebljina`= '$debljina' AND
jos_ib_repromaterijali.ReprMatId IN(".$sklad.") ";
/echo $total;
$totalquantity=mysqli_query($con, $total);
while($row=mysqli_fetch_array($totalquantity))
{
echo "<tr'>";
echo "<td align='center' width='400' height='30'>" . $row['SUM(ReprMatTrenutnaKolicina)'] . "</td>";
echo "</tr>";
}
echo "</table>";
当我回显总数量时,我收到查询:
SELECT SUM(ReprMatTrenutnaKolicina) FROM `jos_ib_repromaterijali` WHERE `ReprMatDebljina`= '0.5' AND jos_ib_repromaterijali.ReprMatId IN(SELECT `ReprMatId` FROM `jos_ib_repromaterijali` WHERE ReprMatSkladiste = '1' OR ReprMatSkladiste = '6')
我得到了结果,但有些问题,我无法弄清楚。任何帮助或建议表示赞赏。
最佳答案
您不能执行$row['SUM(ReprMatTrenutnaKolicina)']
将查询中的 select 语句更改为:
SELECT SUM(ReprMatTrenutnaKolicina) as NUM [...]
然后执行以下操作来访问该值:
$row['NUM']
关于php - 使用其他两列的过滤器减去一列中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25739167/