sqlserver如何根据指定日期计算当年的第一天?

 时间:2026-02-13 13:21:15

1、总体思路:先计算指定日期距离最小日期(1900-01-01)之间相差多少年,然后,再从最小日期加上相差的年份,就得到了指定日期的当年第一天。本文以sqlserver为例讲解,需要用到两个函数dateadd和datediff

sqlserver如何根据指定日期计算当年的第一天?

2、获取SQLserver的当前日期

     select GETDATE()

sqlserver如何根据指定日期计算当年的第一天?

3、DATEADD(datepart, number, date)使用

     1)datepart:表示你要操作的日期的部分,一次只能操作一个类型。比如,一次加5年,一次加2月,一次加3天。都只能一个一个的加。年:year, 月:month, 日:day

     2)number:表示你要加或者减的数量,如果detepart是年,就表示操作年

     3)date:表示在什么日期基础上操作

sqlserver如何根据指定日期计算当年的第一天?

4、DATEDIFF(datepart, startdate, enddate)使用

     1)datepart:表示你要计算的日期的部分,如年,月,日

     2)startdate:表示开始日期

     3)enddate:表示结束日期

sqlserver如何根据指定日期计算当年的第一天?

5、计算指定日期(以当前日期为例)到SQLServer最小日期(1900-01-01)之间相差多少年

     select datediff(year, 0, getdate()) as '相差年份', GETDATE() as '当前日期'

sqlserver如何根据指定日期计算当年的第一天?

6、从SQLServer最小日期(1900-01-01)加上距今的年份,就得到了今年的第一天

     select dateadd(year, datediff(year, 0, getdate()), 0) 

sqlserver如何根据指定日期计算当年的第一天?

7、如果不是当前日期,只需要修改getdate()就可以了。比如,想要知道2020-05-01的当年第一天日期

    select dateadd(year, datediff(year, 0, '2020-05-01'), 0) 

sqlserver如何根据指定日期计算当年的第一天?

  • Excel关闭软件技巧汇总:快捷键+鼠标单击
  • 怎么使用本地安全策略
  • c#编程打印QR值可变的lable,BarTender组件教程
  • SAP界面添加新显示字段包括添加数据元素一
  • 如何禁止IE浏览器下载文件 ?
  • 热门搜索
    乌贼骨的功效与作用 什么耳机好 甘草的作用与功效 string什么意思 关于科技的知识 失笑散的功效与作用 产后运动 交流接触器的作用 什么叫出柜 什么是白色情人节