SQL server 時間日期函式 型別轉換

2022-08-20 05:36:10 字數 2194 閱讀 8716

一、時間日期函式

1、set datefirst 1 --設定星期一為第一天

--datepart函式,返回時間日期中的某乙個部分

--引數1是指返回哪乙個部分,dw表示dayofweek

--引數2是指哪個時間日期裡面去返回

--datefirst是系統常量,在使用時需要加上@@

select @@datefirst as '1st day', datepart(dw, getdate()) as 'today'

--getdate指在執行時獲取當前系統時間

select getdate()--在執行時取當前系統時間

2、--dateadd 對某乙個部分新增或者減去多少時間

--引數1 是對哪乙個部分進行新增或減少

--引數3 是在哪乙個時間日期上進行增加或減少

--引數2 是增加或減去多少

select dateadd(year,-2,'2015-11-20')

select dateadd(month,3,'2015-11-20')

select dateadd(day,5,'2015-11-20')

3、--datediff 算時間差 different 不同的,相差的

--引數1 是指對哪乙個部分進行演算法

--引數2 是開始的時間日期

--引數3 是結束的日期

select datediff(year,'2011-1-2','2015-2-2') --年份相差

select datediff(month,'2011-1-2','2015-2-2')--月份相差(算上中間所有月份)

select datediff(day,'2011-1-2','2015-2-2')--日相差(算上中間所有日)

4、計算戀愛的天數

declare @startday varchar(50) --宣告變數時需要新增資料型別,變數名前加@

set @startday = '2008-8-8' --設定變數的值

--getdate是獲取當前系統時間

select datediff(day,@startday,getdate()) as 戀愛天數

5、--datepart 返回時間日期的某乙個部分

--引數1是返回的哪乙個部分

--引數2是以哪個日期作為被計算的日期

select datepart(year,'2008-8-8')--返回年

select datepart(dy,'2008-8-8')--返回dayofyear 這一年的第幾天

select datepart(qq,'2008-8-8')--返回季度 共四個季度

--day month year 相當於上面的datepart

--返回天,月,年

select day('2008-8-8')

select year('2008-8-8')

select month('2008-8-8')

6、--isdate 判斷時間日期格式是否是正確

--返回值為1表示正確

--返回值為0表示錯誤

select isdate('2012-2-29')

select isdate('2008-80-8')

--sysdatetime 系統精確時間

select sysdatetime()

select getdate()-- 區別是精確與否

二、型別轉換函式

--資料型別轉換 cast convert

--cast 先寫被轉換的value + as + 被轉換成的型別

select cast(1.73 as int)

select cast(1.73 as varchar(50))

select cast(1.73333333 as decimal(18,2))

select cast(cast('1.78' as decimal(18,2)) as int)

select cast('1.78' as decimal(18,2))

--convert 引數1是需要轉換成為的型別,引數2是需要被轉換的value

select convert(int , '87')

select convert(decimal(18,2) , '87.8787')--在精確後面位數的時候會自動四捨五入

select convert(varchar(50) , 342523.234)

SQLServer時間日期函式速查

sqlserver時間日期函式速查 sqlserver時間日期函式詳解,sqlserver,時間日期,1.當前系統日期 時間 select getdate 2.dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如 向日期加上2天 select dateadd day...

時間日期函式

獲取 當前日期 curdate 2021 03 02 select curdate 獲取 當前時間 select curtime 獲取日期和時間 2021 03 02 14 47 31 select now 獲取日期所在的週數 第幾周 select week 1998 02 20 獲取日期中的年份 ...

c 時間日期函式

datetime dt datetime.now label1.text dt.tostring 2007 11 5 13 21 25 label2.text dt.tofiletime tostring 127756416859912816 label3.text dt.tofiletimeutc...