sql

dateadd和datediff详解

sql基础知识

Posted by Mingke Fan on August 13, 2018

dateadd和datediff详解

datediff

datediff(datepart,start,end)
求出end时间同start时间之间的间隔

例:

datediff(month,0,getdate())
求出当前时刻同0之间的月份间隔

dateadd

dateadd(datepart,number,date)
date + number之后的datetime

dateadd和datediff通常搭配使用,如下:

dateadd(mm,datediff(month,0,getdate()),0)
当前月份的第一天的00:00:00.000时刻
dateadd(ms,-3,dateadd(mm,datediff(month,0,getdate()),0))
上个月的最后一天的23:59:59.997时刻

reference

datediff官方文档