mysql - 需要使用两个不同的where子句返回两组数据

标签 mysql sql

我有一个记录交易的表。

表格设置为:

transactions:

id, account_id, budget_id, points, type

我需要返回每个budget_id的type = 'allocation'的积分总和以及type = 'issue'的积分总和

我知道如何在一个查询中执行每一项操作,但不知道如何执行这两项操作。

预期结果集:

budget_id   allocated   issued
   434       200000      100
   242       100000      5020
   621       45000       3940

最佳答案

SELECT budget_id, 
       SUM(IF(type = 'allocation', points, 0)) AS allocated,
       SUM(IF(type = 'issue', points, 0)) AS issued
FROM transactions
GROUP BY budget_id

关于mysql - 需要使用两个不同的where子句返回两组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26239310/

相关文章:

php - 修改htaccess文件,使IP以特定模式开头的用户只能注册,但每个人都可以查看该站点

php - iphone sdk\Uxxx 到 utf-8

MySql程序错误:1242

mysql - SQL从表中选择两个值并将其连接到另一个表中

关于选择特定行数的 SQL 查询查询

mysql - 如何修复 INSERT 上返回的单个 AutoInc 列的 Slick 异常

sql - Oracle - 分组依据为 "steps"

mysql - 基于具有自连接的另一个列值按值排序

MySQL 查询 - 仅使用最新版本的条目进行内部连接

sql - 来自多个表的关联 SQL 连接查询