php - MySQL:sum() 和连接多个表

标签 php mysql arrays join sum

说起来很简单,但我找不到语法,甚至找不到接近的示例!假设下表:

Table:'Red'
Fields: id | sm | md | lg
Data:    1 | 3  | 5  | 7
         2 | 9  | 8  | 7
         3 | 2  | 4  | 6

Table:'White'
Fields: id | sm | md | lg
Data:    1 | 0  | 0  | 0
         2 | 0  | 0  | 0
         3 | 0  | 0  | 0

Table:'Blue'
Fields: id | sm | md | lg
Data:    1 | 1  | 1  | 1
         2 | 1  | 1  | 1
         3 | 1  | 1  | 1

我想要的就是将所有内容加起来,但保留如下表所示的行:

Table:'Total'
Fields: id | sm | md | lg
Data:    1 |  4 | 6  | 8
         2 | 10 | 9  | 8
         3 |  3 | 5  | 7

然后在 PHP 中创建一个 while 循环来回显结果。像这样的事情:

<?php

while($row = mysql_fetch_array($get_totals))
{
echo <td>".$row[sm]."</td><td>".$row[md]."</td><td>".$row[lg]."</td>";
}

?>

我无法弄清楚这一点。有什么帮助吗?我只需要一个可以在这里工作的 php select 语句。

最佳答案

未经测试,但应该可以工作:

SELECT id, SUM(sm) as sm, SUM(md) as md, SUM(lg) as lg FROM (
   SELECT * FROM Red
   UNION ALL
   SELECT * FROM White
   UNION ALL
   SELECT * FROM Blue
) AS somealias 
GROUP BY id

关于php - MySQL:sum() 和连接多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10923905/

相关文章:

javascript - 我可以在没有访问 token 的情况下获取 Instagram 照片的所有评论吗?

php - 给出遥远 future 年份的 Unix 时间戳

php - MySQL insert 写入的值与我输入的值不同

java - 了解将数组切片为子数组的递归调用

arrays - Fixnum 与 nil 的比较失败 - 回文程序 Ruby

c - 在不使用 strcpy 的情况下交换 2 个 char 指针数组并且必须使用赋值运算符?

php - 自定义 wordpress 评论表单 html

php - 如果代码抛出通知,我可以让 PHPUnit 失败吗?

mysql - 特定查询的结果集

java - Hibernate JPA Modelgen 不生成几何字段