首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从今天的日期中选择最后一周的数据

如何从今天的日期中选择最后一周的数据
EN

Stack Overflow用户
提问于 2012-11-07 08:51:48
回答 3查看 145.1K关注 0票数 39

如何以最快的方式从当前日期中选择周数据(更准确地说,是持续7天的数据),因为我在表中有数百万或行。我在sql表中有一个created_date的时间戳。

我试过这个

代码语言:javascript
运行
复制
SELECT Created_Date
FROM Table_Name
WHERE Created_Date >= DATEADD(day,-7, GETDATE())

我有两个问题:

  1. 这个查询正确吗?
  2. 这是从拥有数百万行的表中获取最后七天数据的最快方法吗?
EN

Stack Overflow用户

发布于 2016-06-03 02:50:20

选择过去7天的记录

代码语言:javascript
运行
复制
SELECT * FROM [TableName]
WHERE Created_Date >= DATEADD(day, -7, GETDATE())

选择当前周的记录

代码语言:javascript
运行
复制
SET DATEFIRST 1 -- Define beginning of week as Monday
SELECT * FROM [TableName]
WHERE CreatedDate >= DATEADD(day, 1 - DATEPART(WEEKDAY, GETDATE()), CONVERT(DATE, GETDATE())) 
  AND CreatedDate <  DATEADD(day, 8 - DATEPART(WEEKDAY, GETDATE()), CONVERT(DATE, GETDATE()))

如果您想选择上周的记录,而不是最后7天的记录

代码语言:javascript
运行
复制
SET DATEFIRST 1 -- Define beginning of week as Monday
SELECT * FROM [TableName] 
WHERE CreatedDate >= DATEADD(day, -(DATEPART(WEEKDAY, GETDATE()) + 6), CONVERT(DATE, GETDATE())) 
  AND CreatedDate <  DATEADD(day, 1 - DATEPART(WEEKDAY, GETDATE()), CONVERT(DATE, GETDATE()))
票数 17
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13266130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档