Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date Microsoft Access报告创建_Date_Ms Access_Grouping - Fatal编程技术网

Date Microsoft Access报告创建

Date Microsoft Access报告创建,date,ms-access,grouping,Date,Ms Access,Grouping,我对访问非常陌生,我正试图根据表中的信息创建一个报告。下面是表中当前数据的示例 id Date Name Location Model Count 1 06/10/2012 William Basement Desktop 22 2 06/10/2012 Doug Top Floor Desktop 15 3 06/10/2012 Ja

我对访问非常陌生,我正试图根据表中的信息创建一个报告。下面是表中当前数据的示例

id      Date          Name       Location      Model      Count
 1      06/10/2012    William    Basement      Desktop    22
 2      06/10/2012    Doug       Top Floor     Desktop    15
 3      06/10/2012    Jane       Top Floor     Laptop     12
 4      06/11/2012    William    Basement      Desktop    29
 5      06/11/2012    Doug       Top Floor     Desktop    35
 6      06/12/2012    William    Basement      Desktop    31
 7      06/12/2012    Doug       Top Floor     Desktop    41
 8      06/12/2012    Jane       Top Floor     Laptop     24
现在我要做的是创建一个报告,它将按月分组,将计数相加,取最后一个计数,并从记录的月份的第一天减去第一个计数。所以,我的报告应该是这样的,省去了ID,因为这不是报告所需的数据

Date          Name       Location      Model      Count
June 2012     William    Basement      Desktop    9
June 2012     Doug       Top Floor     Desktop    26
June 2012     Jane       Top Floor     Laptop     12

如果有人有任何想法,我可以实现这一点,记住我是非常新的访问,那将是伟大的

您可以先创建一个查询,然后在此基础上创建报告。包括一个可以设置为MaxOfCount和MinOfCount之差的控件

SELECT DISTINCT Format([Date],"yyyy mm") AS Sort, 
       Format([Date],"mmm yyyy") AS [Month], 
       a.Name, a.Location, a.Model, 
       (SELECT TOP 1 [Count] 
        FROM Report b 
        WHERE a.Name=b.Name AND a.Location=b.Location AND a.Model=b.Model 
        ORDER BY [Date] DESC, Id) As MaxOfCount, 
       (SELECT TOP 1 [Count] 
        FROM Report b 
        WHERE a.Name=b.Name AND a.Location=b.Location AND a.Model=b.Model 
        ORDER BY [Date], Id) AS MinOfCount
FROM Report a

这看起来不错,但我有个问题。我还没有测试它,因为我不确定的一些事情。。。您指的是a.名称a.位置等,我知道“a”将是我的表,但稍后您会说“从报告b,其中a.名称=b.名称等”b是什么?报告是您的表的名称。有两个别名,“a”和“b”。您可以将报告中的
称为b
称为a
。您有两个别名,因为您需要子查询来按日期获取第一个和最后一个计数。顺便说一句,如果列名是真实的,那么您正在使用大量的,这些可能会一直给您带来问题。谢谢。我会很快测试出来,然后再报告。你帮了大忙。列名不准确,我只是缩短了它们…实际的列名是示例“Name”是“UsersFullName”,Model是“StationModel”,count是“ProductionCounts”。结果似乎是相同的…例如,对于5月和6月的一行,MaxOfCount和MinOfCount对于5月和6月发生的所有行都完全相同。。。“2012年5月名称:William-Maxofcount 200-MinOfCount 134”和“2012年6月名称:William-Maxofcount 200-MinOfCount 134”您的示例数据仅提供一个月。我对你想要的东西有点迷茫。如果需要更复杂的查询,则需要提供更准确的数据。