【发布时间】:2017-07-16 09:31:15
【问题描述】:
我正在使用带有 Sharepoint 列表的 Microsoft Access 2013,并且我有两个表:
- 学生:ID、全名、手机、Start_Date(他们开始在我中心学习的日期)以及一些不相关的字段
=> 有很多学生的开始日期不同
- [Weeks Off]:ID、Reason、From_Date(中心暂时关闭的日期)、[Number of Weeks](中心从From_Date开始暂时关闭的周数)李>
=>在每个学生的学习时间内,他们可能会有一些“休息周”不计入他们学习的总周数。
我正在创建一个查询来计算学生从他们的Start_Date 学习的周数。
SELECT
students.ID,
students.[Full name],
students.Mobile,
students.Start_Date,
Round((Date()-students.[Start_Date])/7,0) -
( SELECT SUM(
IIF( [Weeks Off].[From Date]> students.[Start_Date] and [Weeks Off].[From Date]<Date(),
[Weeks Off].[Number of Weeks], 0 )
)
FROM [Weeks Off]
) AS [Studied Weeks],
FROM students;
现在的问题是,即使查询成功地显示了所有学生的“学习周数”列,但 Recordset 不可更新。
如何让它再次可更新?
来自评论:
我改成:
(Round( ( Date()- students.Start_Date)/7,0) -
DSum("[Number of Weeks]", "[Weeks Off]",
"[From Date]>= students.Start_Date And [From Date]<= Date()")
) AS [Studied Weeks]
但它说:Microsoft 找不到您在表达式中输入的名称 students.Start_Date。所以我还是卡在这里。
【问题讨论】:
标签: sql ms-access sharepoint ms-access-2013