Sql 交叉表查询导致更改列名
使用Access 2016创建跟踪团队可用性的应用程序。看起来像:Sql 交叉表查询导致更改列名,sql,database,ms-access,Sql,Database,Ms Access,使用Access 2016创建跟踪团队可用性的应用程序。看起来像: +---------------------------------------------------------------+ | << < 1/1/2018 > >> | | | 1/1/2018 | 1/2/2018 | 1/3/2018 | 1/4/2018 | 1/5/2
+---------------------------------------------------------------+
| << < 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 |
+---------------------------------------------------------------+
我面临的问题是,列标题总是根据日期(例如2018年1月1日vs 2018年1月8日vs 2018年1月15日)而变化,这使得无法将控件绑定到。我该如何着手解决这个问题?也许是更好的数据库设置?因为您显示的是相对于
DayTemp
的日期,所以您也可以表示相对于它的列名:
PIVOT DATEDIFF('d', [DayTemp], [Day]);
这将导致:
+---------------------------------------------+
|UserID |0 | 1 | .... | 4 |
+---------------------------------------------+
|1 |Available|..........|......|Unavail |
|2 |Unavail |..........|......|Available|
+---------------------------------------------+
PIVOT DATEDIFF('d', [DayTemp], [Day]);
+---------------------------------------------+
|UserID |0 | 1 | .... | 4 |
+---------------------------------------------+
|1 |Available|..........|......|Unavail |
|2 |Unavail |..........|......|Available|
+---------------------------------------------+