Vba 使用SQL根据单独表中的日期计算顺序字段值
我一直在尝试在Access 2010中设计一个SQL查询,以统计基于3个表的连续字段值的数量,这些表使用具有唯一ID的字段 范例 表1:课程Vba 使用SQL根据单独表中的日期计算顺序字段值,vba,Vba,我一直在尝试在Access 2010中设计一个SQL查询,以统计基于3个表的连续字段值的数量,这些表使用具有唯一ID的字段 范例 表1:课程 CorID Date 1 01/01/2012 2 01/03/2012 3 01/02/2012 表2:代表 DelID StaffID CorID Value CounterField 1 17263 2
CorID Date
1 01/01/2012
2 01/03/2012
3 01/02/2012
表2:代表
DelID StaffID CorID Value CounterField
1 17263 2 99 1
2 17263 1 99 2
3 17263 3 99 3
4 17263 65 4 1
5 17263 44 5 1
6 17263 78 5 2
表3:工作人员
StaffID Surname
1 Test
2 Smith
17263 Jones
反字段增加1,其中表2中的值字段与前一个值字段相同。需要确保计数仅使用基于课程表日期字段的订单。委托表还将包含比列出的更多的DelID字段,并且还将包含不同的StaffID值
上表中的反字段是我希望查询能够执行的一个示例
这可能吗?提前感谢。如果您想计算委托中关于值字段的不重复行数:
尝试运行子查询:
问题又来了?我想根据委托表中的值字段创建如上所示的反字段。如果值字段如上所述更改值,则反字段需要重置回1。您也可以使用GROUP BY并使COUNT=1来执行此操作,但第一个解决方案更简单,也更快速。谢谢您的回答,我可能在开始时没有说清楚,但我希望能够按照我在原始帖子中描述的方式填充反场。尝试将其转换为英语:将有多个课程,在不同的日期,从staff表中选出多个代表。当我使用委托表中的按staffID筛选的CourseDate升序查询所有3个表时,我希望能够计算重复上一个值字段的值字段。希望这是有道理的。
SELECT count(*)
FROM Delegate
WHERE CounterField = 1
SELECT a.DelID, a.StaffID, a.CorID, a.[Value],
(SELECT Count(*) FROM Delegate b
WHERE b.DelID <= a.DelID AND a.[Value]=b.[Value]) As CounterField
FROM Delegate a;