mysql - 将两个 Mysql SUM select 查询合并为一个查询

标签 mysql sum

我有以下两个查询的 SUM 值
查询 1:*

SELECT SUM(price) FROM TABLE1 WHERE acc_id = '555'

查询2:

SELECT SUM(price) FROM TABLE2 WHERE account = '555' && active='1'

我尝试组合这两个查询,但给出了错误的总和结果,例如,如果 query1 sum is: -86500Query2 sum is: 76000,RESULT 必须是 -10500 但结果显示为 -486000

我正在尝试这样,但我没有得到预期的结果。

SELECT SUM(t1.price + t2.price) AS TotalCredit 
FROM TABLE1 AS t1, TABLE2 AS t2 
WHERE t1.`acc_id` = '555' && t2.`Account`='555' && t2.`Active`='1'

表格图片:enter image description here

最佳答案

由于加入记录的数量得到重复,你得到一个更高的总和值 试试这个

SELECT sum(prc) 
FROM (
    SELECT SUM(price) prc FROM TABLE1 WHERE acc_id = '555'
    union all 
    SELECT SUM(price) prc FROM TABLE2 WHERE account = '555' && active='1'
) a

关于mysql - 将两个 Mysql SUM select 查询合并为一个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14023812/

相关文章:

php - 如何在 HH :MM:SS format 中获得具有精确值的时间字段的正确 sum()

mysql - 在重复字段的情况下获取mysql中的字段总和选择最大值

java - 使用递归求和

php - PHP 中的查询缓存以提高 mySQL 性能

python - SQLAlchemy 添加查询条件

php - 捕获行的 ID 以用作表的名称

mysql - SQL查询性能

java - Java中的时间计算错误

php - #1111 - 在 case 语句 mysql 中组函数的使用无效?

mysql - 按月统计mysql数据库中的条目数