SQL查询日期=今天减去7天

Ash*_*y K 10 sql database sql-server between

我在我的网站上有一个名为ExternalHits的SQL表.我将URL跟踪为URLx,以及将页面作为Datex访问的日期.我每周运行此查询以获取前一周的总点击次数,并且每周我必须手动更改"之间"日期.有没有什么方法可以更改我的查询,以便"之间"日期类似于今天和今天7?我想不必每周手动更改日期.

    SELECT URLX, COUNT(URLx) AS Count
    FROM ExternalHits
    WHERE datex BETWEEN '02/27/2017' AND '03/05/2017'    
    GROUP BY URLx
    ORDER BY Count DESC; 
Run Code Online (Sandbox Code Playgroud)

Azi*_*ved 19

declare @lastweek datetime
declare @now datetime
set @now = getdate()
set @lastweek = dateadd(day,-7,@now)

SELECT URLX, COUNT(URLx) AS Count
FROM ExternalHits
WHERE datex BETWEEN @lastweek AND @now
GROUP BY URLx
ORDER BY Count DESC; 
Run Code Online (Sandbox Code Playgroud)


kri*_*ech 8

您可以使用以下命令从当前日期中减去 7:

WHERE datex BETWEEN DATEADD(day, -7, GETDATE()) AND GETDATE()
Run Code Online (Sandbox Code Playgroud)


Gui*_*ier 5

使用dateadd从当前日期删除一周.

datex BETWEEN DATEADD(WEEK,-1,GETDATE()) AND GETDATE()
Run Code Online (Sandbox Code Playgroud)