【发布时间】:2018-02-07 02:11:52
【问题描述】:
使用 Access 2016 创建一个跟踪团队可用性的应用。看起来像:
+---------------------------------------------------------------+
| << < 1/1/2018 > >> |
| | 1/1/2018 | 1/2/2018 | 1/3/2018 | 1/4/2018 | 1/5/2018 |
+---------------------------------------------------------------+
|Jake |Available |Unavail |Available |Unavail |Available |
|John |Unavail |Available |Available |Available |Unavail |
+---------------------------------------------------------------+
为了能够做到这一点,我正在使用交叉表查询,它可以在下面找到:
PARAMETERS DayTemp DateTime;
TRANSFORM First(Schedule.Availability) AS Availability
SELECT Schedule.UserID
FROM Schedule
WHERE (((Schedule.Day)>=[DayTemp] And (Schedule.Day)<=(DateAdd("d",7,[DayTemp]))))
GROUP BY Schedule.UserID
PIVOT Format([Day],"Short Date");
这导致查询看起来像:
+---------------------------------------------+
|UserID |1/1/2018 | 1/2/2018 | .... | 1/5/2018|
+---------------------------------------------+
|1 |Available|..........|......|Unavail |
|2 |Unavail |..........|......|Available|
+---------------------------------------------+
我遇到的问题是列标题总是根据日期变化(例如 1/1/2018 vs 1/8/2018 vs 1/15/2018),这使得无法将控件绑定到.我该如何解决这个问题?也许更好的数据库设置?
【问题讨论】: