立刃 2013-09-23 03:04 采纳率: 0%
浏览 1193

mssql根据datetime判断该时间是否为本周时间

本周时间的概念是上周六到本周五为一周
比如记录
id name bgTime
1 "test" 2013-08-07 14:12:30
2 "good" 2013-09-27 04:35:30
3 "suine" 2013-09-23 11:12:30
4 "ne" 2013-09-21 11:12:30
5 "sne" 2013-09-22 11:12:30
6 "unine" 2013-09-19 11:12:30
7 "shy" 2012-11-07 14:12:30
now.bgTime=2013-09-23 11:12:30
selsect id,name from a.table where bgTime in {本周}
理想结果:

2 "good" 2013-09-27 04:35:30
3 "suine" 2013-09-23 11:12:30
4 "ne" 2013-09-21 11:12:30
5 "sne" 2013-09-22 11:12:30

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-20 11:07
    关注

    该回答引用ChatGPT

    要根据 MSSQL 中的 datetime 判断该时间是否为本周时间,可以使用以下步骤:


    确定当前日期所在周的起始日期和结束日期。可以使用 DATEPART() 函数获取当前日期是本周的第几天(1 表示星期天,2 表示星期一,以此类推),然后根据这个信息计算出本周的起始日期和结束日期。假设我们的一周是从周六开始算的,则本周的起始日期为本周日减去六天,结束日期为本周六。

    DECLARE @now DATETIME
    SET @now = '2013-09-23 11:12:30'
    
    DECLARE @startOfWeek DATETIME
    SET @startOfWeek = DATEADD(DAY, -DATEPART(WEEKDAY, @now) + 1, @now)
    
    DECLARE @endOfWeek DATETIME
    SET @endOfWeek = DATEADD(DAY, 7 - DATEPART(WEEKDAY, @now), @now)
    

    使用起始日期和结束日期来筛选符合条件的记录。可以使用 BETWEEN 运算符来判断某个日期是否在指定的区间内。

    SELECT id, name, bgTime
    FROM a.table
    WHERE bgTime BETWEEN DATEADD(DAY, -6, @startOfWeek) AND @endOfWeek
    

    完整的 SQL 查询语句如下:

    DECLARE @now DATETIME
    SET @now = '2013-09-23 11:12:30'
    
    DECLARE @startOfWeek DATETIME
    SET @startOfWeek = DATEADD(DAY, -DATEPART(WEEKDAY, @now) + 1, @now)
    
    DECLARE @endOfWeek DATETIME
    SET @endOfWeek = DATEADD(DAY, 7 - DATEPART(WEEKDAY, @now), @now)
    
    SELECT id, name, bgTime
    FROM a.table
    WHERE bgTime BETWEEN DATEADD(DAY, -6, @startOfWeek) AND @endOfWeek
    

    该查询语句会返回所有 bgTime 在本周时间范围内的记录,即 id 为 2、3、4、5 的记录。注意,这里假设一周的起始日是周六,如果起始日不同,需要相应地调整查询语句中的计算逻辑。

    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献