mysql - sql如何实现这个查看表

标签 mysql sql

我想从下表中实现这个 View 。

(a) 我想得到两列,其中 group1 具有不同的值,其中 c3= yes 和 group2,其中它具有根据 group1 的 sum(c2)。

(b) group 3 是 group1 的 sum(c4) 和 group4 是 group 1 的 sum(c5) 怎么办?

c1   |   c2   | c3   | c4 | c5
--------------|---------------
A    |   2    |yes   | 1   | 2
B    |   1    |yes   | 2   | 1
A    |   2    |yes   | 1   | 2
B    |   1    |yes   | 2   | 1
C    |   2    |no    | 4   | 4
C    |   1    |no    | 4   | 4




result :


group1 | group2| group3| group4
--------------------------------
A      | 4     | 2     | 4
B      | 2     | 4     | 2

a 部分被这个查询解决了

SELECT c1 as group1, SUM(c2) as group2 FROM table 
WHERE c3="yes"
GROUP BY c1

Theo Babilon 的回答

但是如何解决 b 部分并获得完整的 View ?

最佳答案

SELECT c1 as group1, SUM(c2) as group2, SUM(c4) as group3, SUM(c5) as group4
FROM table
WHERE c3 = "yes"
GROUP BY c1

关于mysql - sql如何实现这个查看表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34115481/

相关文章:

mysql - mysql排序后生成唯一的列值

php - 用户 Assets 删除后如何处理

php - $.get 无法将数据传递给 php 文件

mysql - 将带有子查询的 MySQL 转换为 DQL 1.2

php - 在一列中选择具有最小值并在另一列中具有特定值的记录

sql - 选择表中不存在的 ID

php - 整个网站显示为怪异字符

php - 如何使用数据库中的值制作 HTML 下拉列表

sql - 将数据库缩小到一定大小

mysql - 将 table1 中的多个列合并到 table2 中的一列中