SQL SERVER常用日期函式

2021-08-25 16:29:37 字數 1415 閱讀 3124

0.獲取乙個隨機的不重複的bigint數。

select convert(char(6),getdate(),12) + right(10000000000 + convert(bigint, abs(checksum(newid()))),10) as id

1.乙個月第一天的

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

2.本週的星期一

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

3.一年的第一天

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

4.季度的第一天

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

5.當天的半夜

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

6.上個月的最後一天

select dateadd(ms,-3,dateadd(mm, datediff(mm,0,getdate()), 0))

7.去年的最後一天

select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate()), 0))

8.本月的最後一天

select dateadd(ms,-3,dateadd(mm, datediff(m,0,getdate())+1, 0))

9.本年的最後一天

select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate())+1, 0))

10.本月的第乙個星期一

select dateadd(wk, datediff(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0)

11、dateadd 加日期函式

select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000

當然也可以加月份 select dateadd(month,2,'2004-10-15')

12、datediff 返回兩個日期之間日期

select datediff(day,'2004-09-01','2004-09-18') --返回:17。和dateadd 一樣,day也可以換成別的

13、datepart 返回代表指定日期的指定日期部分的整數

select datepart(month, '2004-10-15') --返回 10

14、datename 返回代表指定日期的指定日期部分的字串

select datename(weekday, '2004-10-15') --返回:星期五

SQL SERVER常用日期函式

1.乙個月第一天的 select dateadd mm,datediff mm,0,getdate 0 2.本週的星期一 select dateadd wk,datediff wk,0,getdate 0 3.一年的第一天 select dateadd yy,datediff yy,0,getdat...

SqlServer日期函式常用操作

函式 描述getdate 返回當前日期和時間 datepart 返回日期 時間的單獨部分 dateadd 在日期中新增或減去指定的時間間隔 datediff 返回兩個日期之間的時間 convert 用不同的格式顯示日期 時間 select datename hour,getdate select d...

sqlserver 日期函式

一直都在用oracle,對sqlserver中的一些函式很不熟悉,在工作用偶爾會用到,貼在這裡,便於以後查詢 取出資料庫欄位中datetime列的日期部分 1 select datename year,getdate datename month,getdate datename day,getda...