【问题标题】:how to subtract two columns output in a third column using PHP如何使用 PHP 在第三列中减去两列输出
【发布时间】:2013-05-16 20:36:08
【问题描述】:

使用 PHP 我想从 credit 列中减去 used 列的每个值。我在 phpmyadmin 中创建了一个 tableA。

remaining:credit-used 我无法获得结果,我只是获得相同的信用值。

// The desire output in table A

id |date      |credit |used|remaining|
1  |20-5-2013 |400    |300 |100      |
2  |19-5-2013 |300    |100 |200      |
3  |18-5-2013 |600    |50  |550      |  
// db connection  
query select all from tableA
    $sql = "SELECT * FROM tableA";
    $sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute           SQL query" '.$sql);
?>

fetch the information and output into a table:

<table >
<tr>
bla bla..
</tr>

// echo:

<tr>
<td><?php echo $row["id"]; ?></td>
<td><?php echo $row["date"]; ?></td>
<td><?php echo $row["credit"]; ?></td>
<td><?php echo $row["used"]; ?></td>

我正在尝试执行此查询以获得剩余:

// <td> <?php> echo $total= $row["credit"] - $row["used"];?> 
</td>  
</tr>
</table>

谁能给我提示或突出显示错误。比你提前很多。

【问题讨论】:

  • 在人们用勺子喂你答案之前,你将不得不尝试编写一些 SQL。
  • 我尝试做简单的 sql 来获取它。但是,当使用 php 获取数据时,它会变得复杂。我检查了php教程,没有找到太多信息。举个简单的例子,我可以自己做。我尝试了下面的建议,但得到 '0' 我不确定查询是否错误:mysql_query("SELECT *, 'credit'-'used' as 'remaining' FROM 'tablea'");

标签: php mysql phpmyadmin


【解决方案1】:

你拥有的应该可以工作,但为什么不让 MySQL 来做计算呢?

mysql_query("SELECT *, `credit`-`used` AS `remaining` FROM `tableA`");

【讨论】:



  • 剩余的列得到“0”回显:
  • 当其中一个有时具有 null 值然后它给出结果 null 时该怎么办,例如 used=nullcredit=123 然后 credit-used 应该是 123 但它也返回 null ,怎么办?
  • 不要让它可以为空? default 0 更有意义。
  • 日期 信用 已用 剩余
【解决方案2】:

你的 php 中有一个右括号

<td> <?php echo $row["credit"] - $row["used"]; ?> </td>

【讨论】:

  • 可以使用两个值相减吗?
  • 是的,这会反映出差异。
  • 感谢您的回答。有什么办法可以将我所有的代码转发给你,因为它对我不起作用。我在希望得到结果的列中得到 0
猜你喜欢
  • 1970-01-01
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-29
  • 1970-01-01
  • 2023-04-01
相关资源
最近更新 更多