Access语法中的SQL查询
我正在尝试将此查询转换为Access:我面临的主要挑战是Count列-它给出和错误:Syntax Errormissing Operator in Expression Count。。。。。 您会注意到查询中已经发生了一些更改,但是Count表达式让我很头疼Access语法中的SQL查询,sql,ms-access,Sql,Ms Access,我正在尝试将此查询转换为Access:我面临的主要挑战是Count列-它给出和错误:Syntax Errormissing Operator in Expression Count。。。。。 您会注意到查询中已经发生了一些更改,但是Count表达式让我很头疼 SELECT TblFacility.StrFacilityName, TblActivityGroup.GroupID, TblActivityGroup.StrGroupName, Count(
SELECT TblFacility.StrFacilityName,
TblActivityGroup.GroupID,
TblActivityGroup.StrGroupName,
Count(TblClientActivities.ClientID) Over(
Partition By tblFacility.StrFacilityName,
TblActivityGroup.GroupID,
TblActivityGroup.strGroupName
Order By tblFacility.StrFacilityName,
TblActivityGroup.GroupID
) AS CountOfClientID
FROM TblFacility
INNER JOIN TblActivityGroup
INNER JOIN TblClientActivities
ON TblActivityGroup.GroupID = TblClientActivities.lngActivityGroup
and TblFacility.StrFacilityID = TblClientActivities.lngLocation
Where TblClientActivities.DtmDate Between Now() And
DateAdd('m', -3, Now());
任何帮助都将不胜感激
谢谢
斯科特我很确定这件衣服不需要。按tblFacility.StrFacilityName、TblActivityGroup.GroupID、TblActivityGroup.strGroupName按tblFacility.StrFacilityName、TblActivityGroup.GroupID进行分区,底部需要一个group By。Access不支持类似于Over的窗口函数。使用组byI agree w/Utrolig,窗口函数中可能没有点,而不是使用计数器1、2、3、4重复行。。。你可以在一行中得到4的总数。也就是说,您将获得facilityname、groupid、StrroUpName的每个唯一组合的计数,从现在到DateAdd'm',-3,现在;这行吗?从现在到3个月前???@JorgeCampos。它可以工作,但没有日期可以满足条件。这表明简单地用1=0替换where子句就相当了。