统计最新整点以后的雨量总计


select top 60 r.STCD,b.STNM,sum(r.DRP) as DRP_SUM ,b.RVNM,b.ADMAUTH ,b.STLC from dbo.ST_PPTN_R r left join dbo.ST_STBPRP_B b on r.STCD=b.STCD where r.TM >= DATEADD(hour,-1,GETDATE()) and b.FRGRD <> 5 group by r.STCD,b.RVNM ,b.STNM,b.STLC,b.ADMAUTH order by sum(r.DRP) desc

这是我写的整点一小时雨量排序的sql语句。然后现在是需要统计最新整点以后的雨量总计。打个比方,现在9点50,我需要统计整点9点到9点50这50分钟的雨量,数据库里是5分钟数据一更新,而且加报字段也还是DRP_SUM


SELECT TOP 60
    r.STCD,
    b.STNM,
    SUM(r.DRP) AS DRP_SUM,
    b.RVNM,
    b.ADMAUTH,
    b.STLC
FROM dbo.ST_PPTN_R r
LEFT JOIN dbo.ST_STBPRP_B b ON r.STCD = b.STCD
WHERE r.TM >= DATEADD(MINUTE, -50, DATEADD(HOUR, DATEDIFF(HOUR, 0, GETDATE()), 0)) -- 获取当前整点时间,然后减去50分钟
  AND r.TM <= DATEADD(HOUR, DATEDIFF(HOUR, 0, GETDATE()), 0) -- 获取当前整点时间
  AND b.FRGRD <> 5
GROUP BY r.STCD, b.RVNM, b.STNM, b.STLC, b.ADMAUTH
ORDER BY SUM(r.DRP) DESC;