sqlserver 时间函数用法

1.DATEADD(datepart,number,date)

    现在,我们希望向 "OrderDate" 添加 2 天,这样就可以找到付款日期,我们使用如下 SELECT 语句:

SELECT OrderId,DATEADD(day,2,OrderDate) AS OrderPayDate
FROM Orders
① 本月第一天(--减去今天再加上1天) 
SELECT DATEADD(DD,-DAY(GETDATE())+1,GETDATE())

SELECT DATEADD(MM, DATEDIFF(MONTH,0,GETDATE()), 0)

②本月最后一天 
SELECT DATEADD(DD,-DAY(DATEADD(M,1,GETDATE())),DATEADD(M,1,GETDATE()))
③本周的星期一 
 
 SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)

   本周的最后一天(星期天) 
select dateadd(wk,(SELECT DATEDIFF(wk,0,GETDATE())),6)   

④一年的第一天 
  现在用年(yy)的时间间隔来显示这一年的第一天。 
  SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)

⑤季度的第一天 
  假如你要计算这个季度的第一天,这个例子告诉你该如何做。 
 
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0) 

6一年的最后一天 
  现在用年(yy)的时间间隔来显示这一年的最后一天。 很简单,先算出这一年的第一天, 
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0),然后加一年减一天,即是本年的最后一天 
SELECT DATEADD(DD,-1,DATEADD(YY,1,DATEADD(YY,DATEDIFF(YY,0,GETDATE()),0)))


2.DATEDIFF() 函数返回两个日期之间的时间。

返回当天数据 between DATEADD(dd, DATEDIFF(dd,0,getdate()), 0) and DATEADD(dd, DATEDIFF(dd,0,getdate()+1), 0)



3.DATEPART 返回代表指定日期的指定日期部分的整数。
posted @   桃花雪  阅读(378)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示