我想知道每个月,每年按月租用多少小部件的运行记录。数据保存在MS Access 2003 db;
中喜欢的东西;计算月/年之间的rentid数量,然后将它们分组?
e.g。如果从2014年1月5日到2014年4月8日租用小部件,它将在1月,2月,3月和4月的计数中显示为计数。
非常感谢。
更多细节(抱歉);
报告输出示例;
查询可以在日期内选择日期吗?所以从字面上算一下这个表的日期> 2013年12月31日和2014年2月1日(为了获得2014年1月全部的计数),那将包括从1月5日开始的租金的例子吗?所以我每年可以做十二次计数?
答案 0 :(得分:0)
创建一个日历表,例如 table = cal_yyyymm,其中一列dt_yyyymm为数字字段
用...填充表格,说5年或10年的数据 201401 201402 201403 ... 60或120行,小表
制作一个sql
Select
dt_yyyymm,
count(*) as cnt
From cal_yyyymm
Left Join rent_table
On format(startdate,"yyyymm") >= dt_yyyymm
And dt_yyyymm >= format(enddate,"yyyymm")
考虑数据的复杂性 - -
小部件于2014年1月5日至2014年1月8日租用 并于2014年1月11日至2014年1月21日再次租用 这个月的数量是1还是2?
如果是1,则sql变得更复杂,因为 rent_table首先需要转换日期 到yyyymm格式,第二个需要在rentid上去掉, 然后第三次加入cal_在日期......