根据ID和排序将列分为许多列SQL

时间:2018-12-13 00:03:54

标签: sql ms-access oledb

enter image description here

enter image description here

我想创建一个查询(作为视图工作)以获取特定列的值并将其合并为一列。

我的目标是将星期一(星期五)的视图按id_day(1-monday,2-tuesday ...)划分为几列,并按id_time对其进行排序,并放入相应的行中。

我想创建类似时间表的内容,因此不必每天从同一小时开始上课(如果没有适当的上课时间,则必须为空单元格)。时间列将从时间表中获取。

如何执行此操作?我正在使用MS Access文件作为数据库。

编辑:我添加了视图和目标的示例。我也发现这对我有帮助,但是我不知道如何将数据放入适当的行中。 我必须有一个时间表作为一个查询,因为我将在DataGrid(WPF)中显示它

选择 ( case id_day ='1',然后是“ subject + class + teacher”,如星期一 ...直到id_day ='5' ) FROM timetable_class WHERE id_class =

1 个答案:

答案 0 :(得分:0)

要获取时间表中的空白行,您可能需要创建一个表(或查询),该表首先包含所有可能时隙的列表。

如果您创建的表的日期名称和ID与您的表相匹配,可能还会帮助您理解。 (您可以使用一个函数来获取此信息,但是当您开始时,用这种方法可能会更容易。

将这两个表添加到查询中,以便最终记录中需要查看的所有数据都正确显示在每个记录中。

然后按照June7的建议创建一个交叉表,您应该拥有它!