经典ASP Access数据库查询,总和和组

时间:2014-02-25 12:03:46

标签: sql ms-access asp-classic

我有一个Access数据库(2003)的经典ASP前端,并希望对我的数据运行一些计算。我有每天租用的物品,并且每天都有相关的运行费用。以下是表格详情;

  • 表名:rent_table
  • 字段:
    • rentid
    • STARTDATE
    • 结束日期
    • rentfee
    • rentcost
    • bookingfee

目前在Excel中我这样做;

(startdate-enddate)* rentfee + bookingfee -minus(startdate-enddate)* rentcost

这给了我每个rentid的利润。我通过enddate订购,然后按月(月末)对其进行分组,以便在结束日期到期时我知道可以释放利润。在Excel中,我手动执行月份分组/求和。

目标是在ASP中自动化流程,以便我得出结果汇总;

  • 报告标题:利润,monthend
  • 结果第1行:1月14日£2.00
  • 结果第2行:2月14日£4.00
  • 结果行N:6月16日£6.00

我知道如何构建ASP页面,连接数据库并显示查询结果。这真的是我需要的查询。提前谢谢(请温柔,我的第一篇文章)。

1 个答案:

答案 0 :(得分:1)

以下内容应该让你接近。查询未经测试,但应该给你一个很好的起点。月份将以1到12的数字返回;您可能希望根据需要格式化。

SELECT Month(enddate) AS Mo, Year(enddate) as Yr, 
       Sum( ((enddate - startdate) * rentfee) + bookingfee - ((enddate - startdate) * rentcost) ) as Profit
FROM rent_table
WHERE enddate Is Not Null
GROUP BY Year(enddate), Month(enddate)
ORDER BY Year(enddate), Month(enddate)