【发布时间】:2013-06-30 21:14:59
【问题描述】:
我喜欢从我的数据库中构建一个摘要。
表:写引号
id| datum |member|transaktion |pm|beträge
1 |1372456800|Name1 |transaktion1|0 | 24
2 |1372543200|Name2 |transaktion1|1 | 24
使用我的代码:
<?php
include("dbopen.php");
$result = mysql_query("SELECT SUM(beträge)
FROM writenquotes");
while($row=mysql_fetch_array($result))
{
echo $row['SUM(beträge)'];
}
?>
我的问题是,PM 用 0 或 1 声明正数或负数。
0 = 正数
1 = 负数
使用我的代码,我只能构建一个积极的总结,例如48...
id 1 = 24(正数)
id 2 = -24(负数)
总结是真实的 0 而不是 48
不知道我的错误是什么,但我的代码只给了我一个 0(零)或资源 id #3 ... umpf :-(
<?php
include("dbopen.php");
$result = mysql_query("SELECT SUM(IF(pm=1, -1, 1) * beträge) FROM writenquotes", $link);
echo mysql_errno($link) . " " . mysql_error($link). "\n";
while($row=mysql_fetch_array($result))
{
echo "<font color=\"red\">".$row['SUM(beträge)']."</font>";
}
?>
还有这个
<?php
include("dbopen.php");
$result = mysql_query("SELECT SUM(CASE pm=0 THEN beträge ELSE -beträge END) FROM writenquotes", $link);
echo mysql_errno($link) . " " . mysql_error($link). "\n";
echo $result['SUM(beträge)'];
?>
只给我这个:
1064 您的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本,以便使用正确的语法 在第 1 行的“THEN beträge ELSE -beträge END) FROM writenquotes”附近
【问题讨论】:
-
我只能建立一个积极的总结,例如48... 你这是什么意思?
-
id 1 = 24 ( positiv ) id 2 = -24 ( negativ ) 总结是真实的 0 而不是 48
标签: php mysql sum multiple-columns