drq231358 2018-04-01 23:44
浏览 257

SQL用于计算过去24个月及以上的总和

I want to calculate the sum and average of my data in the past 24 months how can I achieve that? In my database I have 1000 records with the field (ID, Store_ID, Date, Sales) I want to calculate the average of all my data from THIS month up to the last 24 months.

  • 写回答

3条回答 默认 最新

  • 普通网友 2018-04-02 00:11
    关注

    I believe you are looking for the DATEADD function. Here is the documentation.

    Essentially, you will use a where condition to check if a date is older than a certain date.

    By using the DATEADD function with the current time, you can create a date X months in the past.

    SELECT columns FROM table WHERE date < DATEADD(month, numberOfMonths, GETDATE());
    

    For SQL querys that use aggregate functions (such as SUM), depending on how you use the function you may require the HAVING clause; instead of, the WHERE clause. I don't think your case will require this; but, I may be wrong.

    You can read more on HAVING vs WHERE at this article.

    Here is an example:

    SELECT columns FROM table HAVING date < DATEADD(month, numberOfMonths, GETDATE());
    

    The code samples are untested; however, the general structure is there. We are also using the GETDATE() function to get the current database date.

    评论

报告相同问题?

悬赏问题

  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥15 Python3.5 相关代码写作
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗