聚合动态列值mysql
我有以下聚合动态列值mysql,mysql,sql,stored-procedures,pivot,aggregate-functions,Mysql,Sql,Stored Procedures,Pivot,Aggregate Functions,我有以下任务表: id | client_id | user_id | designation_id | total_hours ----------------------------------------------------------------- 1 | 14 | 134 | 1 | 4 2 | 14 | 135 | 2 | 1
任务
表:
id | client_id | user_id | designation_id | total_hours
-----------------------------------------------------------------
1 | 14 | 134 | 1 | 4
2 | 14 | 135 | 2 | 1
3 | 15 | 136 | 3 | 3
4 | 16 | 137 | 4 | 4.5
id | title
------------------------
1 | Cloud Analyst
2 | Data Analyst
3 | Data QA Analyst
4 | Project Manager
.
.
和名称
表:
id | client_id | user_id | designation_id | total_hours
-----------------------------------------------------------------
1 | 14 | 134 | 1 | 4
2 | 14 | 135 | 2 | 1
3 | 15 | 136 | 3 | 3
4 | 16 | 137 | 4 | 4.5
id | title
------------------------
1 | Cloud Analyst
2 | Data Analyst
3 | Data QA Analyst
4 | Project Manager
.
.
我有一个存储过程,它将指定
表中的每个记录旋转到列
(动态):
结果如下:
client | user | Cloud Analyst | Data Analyst | Data QA Analyst | Project Manager
-------------------------------------------------------------------------------------------
14 | 134 | 4 | | |
14 | 135 | | 1 | |
15 | 136 | | | 3 |
16 | 137 | | | | 4.5
我试图得到的是按client\u id
分组的每个动态designation
列的SUM
比如:
client | user | Cloud Analyst | Data Analyst | Data QA Analyst | Project Manager
-------------------------------------------------------------------------------------------
14 | 134 | 4 | | |
14 | 135 | 0.5 | | |
14 | null | 4.5 | | |
比如说,如果已知列,它将是:
.
.
UNION ALL
SELECT client, NULL, NULL.., SUM('Cloud Analyst') as c1, SUM('Data Analyst') as d1....
像那样的
但我被动态案例卡住了
我在sql server
中找到了一个but,我无法破解它
希望有人能帮我