Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用sum和join对行进行分组(生成摘要)_Mysql_Sql_Select_Group By_Sum - Fatal编程技术网

Mysql 使用sum和join对行进行分组(生成摘要)

Mysql 使用sum和join对行进行分组(生成摘要),mysql,sql,select,group-by,sum,Mysql,Sql,Select,Group By,Sum,有这样一个行集: | ID | OP_CODE | OWNER | MEASURE | COUNT | |----|-------------|-------|----------|-------| | 1 | Operation 1 | 1 | Geometry | 42 | | 2 | Operation 1 | 1 | Geometry | 48 | | 3 | Operation 1 | 1 | Vacuum | 29 | |

有这样一个行集:

| ID |     OP_CODE | OWNER |  MEASURE | COUNT |
|----|-------------|-------|----------|-------|
|  1 | Operation 1 |     1 | Geometry |    42 |
|  2 | Operation 1 |     1 | Geometry |    48 |
|  3 | Operation 1 |     1 |   Vacuum |    29 |
|  4 | Operation 1 |     1 |  Electro |    14 |
|  5 | Operation 1 |     2 | Geometry |    87 |
|  6 | Operation 1 |     2 | Geometry |   112 |
|  7 | Operation 1 |     2 |   Vacuum |    78 |
|  8 | Operation 1 |     3 |   Vacuum |    56 |
|  9 | Operation 1 |     3 |  Electro |    78 |
| OWNER | GEOMETRY_CNT | VACUUM_CNT | ELECTRO_CNT | TOTAL_CNT |
|-------|--------------|------------|-------------|-----------|
|     1 |           90 |         29 |          14 |       133 |
|     2 |          199 |         78 |      (null) |       277 |
|     3 |       (null) |         56 |          78 |       134 |
我想按所有者对行进行分组,并将其他度量值(列度量值的值)与列的总和计数合并/联接到如下结果:

| ID |     OP_CODE | OWNER |  MEASURE | COUNT |
|----|-------------|-------|----------|-------|
|  1 | Operation 1 |     1 | Geometry |    42 |
|  2 | Operation 1 |     1 | Geometry |    48 |
|  3 | Operation 1 |     1 |   Vacuum |    29 |
|  4 | Operation 1 |     1 |  Electro |    14 |
|  5 | Operation 1 |     2 | Geometry |    87 |
|  6 | Operation 1 |     2 | Geometry |   112 |
|  7 | Operation 1 |     2 |   Vacuum |    78 |
|  8 | Operation 1 |     3 |   Vacuum |    56 |
|  9 | Operation 1 |     3 |  Electro |    78 |
| OWNER | GEOMETRY_CNT | VACUUM_CNT | ELECTRO_CNT | TOTAL_CNT |
|-------|--------------|------------|-------------|-----------|
|     1 |           90 |         29 |          14 |       133 |
|     2 |          199 |         78 |      (null) |       277 |
|     3 |       (null) |         56 |          78 |       134 |
在这种情况下,几何形状、真空度、电性是第一个表中相应值的总和:

所有者1几何体=42+48=90

所有者1真空度=29

业主1电碳=14

业主1_总计=29+14+90=133

我怎样才能得到这个划艇组

试试这个:

SELECT a.OWNER, SUM(IF(a.MEASURE = 'Geometry', a.COUNT, 0)) GEOMETRY_CNT, 
       SUM(IF(a.MEASURE = 'Vacuum', a.COUNT, 0)) VACUUM_CNT, 
       SUM(IF(a.MEASURE = 'Electro', a.COUNT, 0)) ELECTRO_CNT, 
       SUM(a.COUNT) TOTAL_CNT
FROM operations_schedule a 
GROUP BY a.OWNER
检查

输出

| OWNER | GEOMETRY_CNT | VACUUM_CNT | ELECTRO_CNT | TOTAL_CNT |
|-------|--------------|------------|-------------|-----------|
|     1 |           90 |         29 |          14 |       133 |
|     2 |          199 |         78 |           0 |       277 |
|     3 |            0 |         56 |          78 |       134 |