Mysql 对有条件的行进行部分求和

标签 mysql sum mariadb

这是当前架构

StoreID | StructureID | Quota
----------------------
      1 |           1 | 100
      1 |           1 |  50
      2 |           1 | 100
      2 |           1 | 200
      3 |           1 | 100
      1 |           2 |  50
      1 |           2 |  20
      2 |           2 | 100

现在我们应该通过添加具有相同StoreID和StructureID的商店的配额来组合成为这样

StoreID | StructureID | Quota
----------------------
      1 |           1 | 150
      2 |           1 | 300
      3 |           1 | 100
      1 |           2 | 70
      2 |           2 | 100

我知道如何对整个表进行 SUM() 并生成一行,但不知道如何对一小部分进行求和并创建部分表。救命!

应创建一个新表(CREATE TABLE AS),并且原始表应保持不变。

最佳答案

只需按 StoreID StructureID 进行分组

SELECT StoreID, StructureID, SUM(Quota) FROM table GROUP BY StoreID, StructureID

关于Mysql 对有条件的行进行部分求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57219458/

相关文章:

c++ - MySQL插入序​​列的优化

php - 意外警告 - mysql_fetch_array() 期望参数 1 为资源,给定 bool 值

mysql - 关于 INNODB 锁定的困惑

mysql - 当一个查询为空而其他查询有结果时进行检索的连接或其他方法

java - 尝试将第一个连续奇数平方和相加?

javascript - Jquery 汇总动态生成的表上的行数

mysql - 使用 MySQL 时对 my.ini 的更改不持久

mysql - MariaDB mysqlslap 不工作

Mysql - 如何比较两个 Json 对象?

Mysql优化where子句中的子查询