zoukankan      html  css  js  c++  java
  • SQL 里的第一天例子


    SQL里计算时间是经常会遇到的。
    那么我们先要知道一个基本的东西
    Select Cast(0 As Datetime)
    ------------------------------------------------------
    1900-01-01 00:00:00.000

    也就是说 int类型的0相当于 datetime类型的1900-01-01 00:00:00.000

    下面的例子是计算当前月的第一天日期时间(当然有更简单的算法,这里是举例而已)
    select  DateAdd(mm, DateDiff(mm,0,getdate()), 0)

    说明:1、DateDiff(mm,0,getdate())  就是计算当前日期与1900-01-01 00:00:00.000 月间隔(=1289)
          2、DateAdd(mm, 1289, 0)      计算 1900-01-01 00:00:00.000增加1289个月后的日期

    同样计算
      
      当前年的第一天(元旦)
      select DateAdd(yy, DateDiff(yy,0,getdate()), 0)
      
      本季度的第一天  
      Select DateAdd(qq, DateDiff(qq,0,getdate()), 0)   

      本周的第一天(星期一)日期
      select DateAdd(wk, DateDiff(wk,0,getdate()), 0)

        这里我们需要知道
        select datepart(wk,0) 是周一(就是说1900-01-01 00:00:00.000 是礼拜一)
        就不需要设置set datefirst 1什么的了。


  • 相关阅读:
    网络性能评估
    HTML5 historyState pushState、replaceState
    pre换行段落间距
    2、hibernate七步走完成增删改查
    8.多线程和Socket通信
    7..使用反射动态创建数组和访问数组
    5. Java反射机制
    11、触发器
    10.程序包
    9.函数
  • 原文地址:https://www.cnblogs.com/piaoqingsong/p/782318.html
Copyright © 2011-2022 走看看