我的表中有这些数据:
Class Monday Tuesday Wednesday Thursday Friday
--------------------------------------------------------------------
class 1 8:00 12:00 8:00 8:00 10:00
class 2 7:00 15:00 7:00 NULL 7:00
class 3 11:00 11:00 12:00 NULL NULL
我需要获得以下信息
Class Day Hour
--------------------------------------------------------------------
class 1 Monday 8:00
class 1 Tuesday 12:00
class 1 Wednesday 8:00
class 1 Thursday 8:00
class 1 Friday 10:00
class 2 Monday 7:00
class 2 Tuesday 15:00
class 2 Wednesday 7:00
class 2 Friday 7:00
class 3 Monday 11:00
class 3 Tuesday 11:00
class 3 Wednesday 12:00
感谢您的回答和帮助,我非常感谢
注意:查询结果将显示在excel中
答案 0 :(得分:0)
您需要的是一个名为UNPIVOT的操作,它将列旋转到行。假设您使用的是SQL Server,则可以使用类似这样的查询生成所需的结果:
SELECT Class, Day, Hour
FROM classes UNPIVOT (Hour FOR Day IN (Monday, Tuesday, Wednesday, Thursday, Friday)) u
答案 1 :(得分:0)
选择* 从表 按班级排序,周一,周二,周三,周四,周五