select '上午' " ",
max(case when 星期 = '周一' then wm_concat(上午) else null end) 周一,
max(case when 星期 = '周二' then wm_concat(上午) else null end) 周二,
max(case when 星期 = '周三' then wm_concat(上午) else null end) 周三,
max(case when 星期 = '周四' then wm_concat(上午) else null end) 周四,
max(case when 星期 = '周五' then wm_concat(上午) else null end) 周五
from tab
union all
select '下午' " ",
max(case when 星期 = '周一' then wm_concat(下午) else null end) 周一,
max(case when 星期 = '周二' then wm_concat(下午) else null end) 周二,
max(case when 星期 = '周三' then wm_concat(下午) else null end) 周三,
max(case when 星期 = '周四' then wm_concat(下午) else null end) 周四,
max(case when 星期 = '周五' then wm_concat(下午) else null end) 周五
from tab