【发布时间】:2017-11-14 17:22:06
【问题描述】:
我有一个名为abc 的表,其值为:
date | Code | Class | subitem | Item_No |
2017-04-02 | FII | INDIR | YAA | 28 |
2017-04-09 | FII | INDIR | YAA | 28 |
2017-04-16 | FII | INDIR | YAA | 14 |
2017-04-23 | FII | INDIR | YAA | 24 |
2017-04-30 | FII | INDIR | YAA | 41 |
2017-04-02 | RRT | INDIR | BKK | 8 |
2017-04-09 | RRT | INDIR | BKK | 3 |
2017-04-16 | RRT | INDIR | BKK | 16 |
2017-04-23 | RRT | INDIR | BKK | 15 |
2017-04-30 | RRT | INDIR | BKK | 32 |
2017-04-09 | RRT | INDIR | WESEL | 14 |
2017-04-16 | RRT | INDIR | WESEL | 7 |
2017-04-23 | RRT | INDIR | WESEL | 2 |
2017-04-02 | RRT | INDIR | YAA | 67 |
2017-04-09 | RRT | INDIR | YAA | 98 |
2017-04-16 | RRT | INDIR | YAA | 135 |
2017-04-23 | RRT | INDIR | YAA | 103 |
2017-04-30 | RRT | INDIR | YAA | 119 |
2017-04-02 | IDS | INDIR | YAA | 8 |
我想要的输出是这样的:
CODE | ITEM_NO | GROUP | DATE
FII | 103 | A1 | 2017-04-02
RRT | 103 | A1 | 2017-04-02
IDS | 103 | A1 | 2017-04-02
FII | 126 | A2 | 2017-04-09
RRT | 126 | A2 | 2017-04-09
FII | 149 | A3 | 2017-04-16
RRT | 149 | A3 | 2017-04-16
FII | 127 | A4 | 2017-04-23
RRT | 127 | A4 | 2017-04-23
FII | 160 | A5 | 2017-04-30
RRT | 160 | A5 | 2017-04-30
这是我的脚本:
select distinct
Group_concat(Code SEPARATOR ', ') Code,
sum(Item_No) totally,
CONCAT("A",CAST(@jim:=@jim +1 AS CHAR)) Group,
Date Date
from tableT
where Date between '2017-04-01' and '2017-04-30'
and SubItem = 'YAA'
and dept IN ('FII','RRT','IDS')
group by Date
但我只能得到这样的结果:
CODE | ITEM_NO | GROUP | DATE
FII, RRT, IDS | 103 | A1 | 2017-04-02
FII, RRT | 126 | A2 | 2017-04-09
FII, RRT | 149 | A3 | 2017-04-16
FII, RRT | 127 | A4 | 2017-04-23
FII, RRT | 160 | A5 | 2017-04-30
还有其他方法可以得到 RESULT 吗? 谢谢你的帮助
【问题讨论】:
-
我发现数据集和预期结果之间没有相关性
-
Deptpivot?部门?子项?团体?没有任何意义
-
@Strawberry,对不起,我写的有些正确。真实的是代码而不是 Dept Pivot,是的,数据集与所需结果之间没有相关性。但是当我在本地运行时,结果是让我 19 行
标签: mysql casting group-concat