首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在mysql中实现同一表中三个字段的求和

问如何在mysql中实现同一表中三个字段的求和
EN

Stack Overflow用户
提问于 2011-08-19 12:27:36
回答 2查看 635关注 0票数 0

我有一个表,其中包含字段,我想要将来自三个不同字段的数据求和,如下所示。我按如下方式编写了代码,但有错误。所以请帮我编写正确的代码:

代码语言:javascript
复制
    <?php include "config.php"; ?> 
    <?php $results = mysql_query
("SELECT sum(hit),as total from ( 
select hit from sound union 
select hit from soundK union 
select hit from soundD ") ; 
while ( $row = mysql_fetch_array($results) ) 
{ ?> 
<?php echo $row[total];?> <?php }?> 

所以请尽快帮助我们

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2011-08-19 12:28:58

您有一个额外的,,缺少结尾的)和派生的表别名:

代码语言:javascript
复制
<?php include "config.php"; ?> 
<?php $results = mysql_query(
    "SELECT sum(hit) as total 
    FROM ( 
        SELECT sum(hit) hit from sound 
        UNION ALL SELECT sum(hit) hit from soundK 
        UNION ALL SELECT sum(hit) hit from soundD 
    ) rs") ; 
while ( $row = mysql_fetch_array($results) ) { ?> 
    <?php echo $row['total'];?>
<?php }?> 

如果您想要3个单独的列:

代码语言:javascript
复制
<?php include "config.php"; ?> 
<?php $results = mysql_query(
    "SELECT soundHits, soundKHits, soundDHits
    FROM ( 
        SELECT sum(hit) soundHits from sound
    ) a, (
        SELECT sum(hit) soundKHits from soundK
    ) b, ( 
        SELECT sum(hit) soundDHits from soundD 
    ) c") ; 
while ( $row = mysql_fetch_array($results) ) { ?> 
    soundHits: <?php echo $row['soundHits'] ;?>
    soundKHits: <?php echo $row['soundKHits'] ;?>
    soundDHits: <?php echo $row['soundDHits'] ;?>
<?php }?> 
票数 1
EN

Stack Overflow用户

发布于 2011-08-19 12:44:45

或者..。

代码语言:javascript
复制
select (
    (select sum(hit) from sound) +
    (select sum(hit) from soundK) +
    (select sum(hit) from soundD)) 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7116944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档