我正在寻找一个可以将同一个表的两行连接在一起的SQL语句.
目前,我的表看起来像这样:
LocationName | StationName | 12:00 - 13:00 | 13:00 - 14:00 | 15:00 - 16:00
T2 | Entrance | Michael | Michael | Michael
T2 | Entrance | Joyce | Joyce | Joyce
Run Code Online (Sandbox Code Playgroud)
如您所见,有两行具有相同的LocationName和StationName.唯一的区别是在时间段之间,分配了2个人.我的目标是使用mysql语句将这两行连接成1.
我希望它看起来像这样:
LocationName | StationName | 12:00 - 13:00 | 13:00 - 14:00 | 15:00 - 16:00
T2 | Entrance | Michael Joyce | Michael Joyce | Michael Joyce
Run Code Online (Sandbox Code Playgroud)
如您所见,2个不同的名称属于同一列,只有1行.这就是我想要的.有任何想法吗?
为此使用GROUP_CONCAT
SELECT LocationName,
StationName ,
GROUP_CONCAT(`12:00 - 13:00` SEPARATOR ' ') `12:00 - 13:00`,
GROUP_CONCAT(`13:00 - 14:00` SEPARATOR ' ') `13:00 - 14:00`,
GROUP_CONCAT(`15:00 - 16:00` SEPARATOR ' ') `15:00 - 16:00`
FROM tableName
GROUP BY LocationName,
StationName
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |