gpt4 book ai didi

SQL Server : get average per week for the past 30 weeks

转载 作者:行者123 更新时间:2023-12-02 11:18:10 28 4
gpt4 key购买 nike

我正在尝试弄清楚如何获取 SQL Server 2008 中过去/最近 30 周的每周平均 CHECK_AMOUNT

我尝试过类似的方法(见下文),但我认为这是几个月而不是几周。

SELECT TOP 30
AVG(CHECK_AMOUNT) AS W2
FROM
CHECKS
WHERE
NOT UNT='256'
GROUP BY
YEAR(DATE_GIVEN), MONTH(DATE_GIVEN)

谁能告诉我如何才能做到这一点,

谢谢...

最佳答案

只需使用 where 子句比较日期即可:

  select AVG(CHECK_AMOUNT)
from CHECKS
WHERE NOT UNT='256' and DATEDIFF(d, Date_Given, getdate()) <= 30*7

对不起;我误读了这个问题。您想要每周的平均值。您原来的查询非常接近

  select DATEDIFF(d, Date_Given, getdate())/7 as weeks_ago, AVG(CHECK_AMOUNT)
from CHECKS
WHERE NOT UNT='256' and DATEDIFF(d, Date_Given, getdate()) <= 30*7
group by DATEDIFF(d, Date_Given, getdate())/7

我将保留 where 子句进行选择,而不是使用 top 30 - 以防有几周没有检查。

关于SQL Server : get average per week for the past 30 weeks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954803/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com