SQLServer時(shí)間日期函數(shù)詳解-2023修改整理_第1頁(yè)
SQLServer時(shí)間日期函數(shù)詳解-2023修改整理_第2頁(yè)
SQLServer時(shí)間日期函數(shù)詳解-2023修改整理_第3頁(yè)
SQLServer時(shí)間日期函數(shù)詳解-2023修改整理_第4頁(yè)
SQLServer時(shí)間日期函數(shù)詳解-2023修改整理_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

千里之行,始于足下讓知識(shí)帶有溫度。第第2頁(yè)/共2頁(yè)精品文檔推薦SQLServer時(shí)間日期函數(shù)詳解SQLServer時(shí)光日期函數(shù)詳解,SQLServer,時(shí)光日期,

1.當(dāng)前系統(tǒng)日期、時(shí)光

selectgetdate()

2.dateadd在向指定日期加上一段時(shí)光的基礎(chǔ)上,返回新的datetime值

例如:向日期加上2天

selectdateadd(day,2,'2022-10-15')--返回:2022-10-1700:00:00.000

3.datediff返回跨兩個(gè)指定日期的日期和時(shí)光邊界數(shù)。

selectdatediff(day,'2022-09-01','2022-09-18')--返回:17

selectdatediff(day,'2022-09-18','2022-09-01')--返回:-17

4.datepart返回代表指定日期的指定日期部分的整數(shù)。

SELECTDATEPART(month,'2022-10-15')--返回10

5.datename返回代表指定日期的指定日期部分的字符串

SELECTdatename(weekday,'2022-10-15')--返回:星期五

6.day(),month(),year()--可以與datepart對(duì)比一下

select當(dāng)前日期=convert(varchar(10),getdate(),120)

,當(dāng)前時(shí)光=convert(varchar(8),getdate(),114)

selectdatename(dw,'2022-10-15')

select本年第多少周=datename(week,'2022-10-15')

,今日是周幾=datename(weekday,'2022-10-15')

函數(shù)參數(shù)/功能

GetDate()返回系統(tǒng)目前的日期與時(shí)光

DateDiff(interval,date1,date2)以interval指定的方式,返回date2與date1兩個(gè)日期之間的差值

date2-date1

DateAdd(interval,number,date)以interval指定的方式,加上number之后的日期

DatePart(interval,date)返回日期date中,interval指定部分所對(duì)應(yīng)的整數(shù)值DateName(interval,date)返回日期date中,interval指定部分所對(duì)應(yīng)的字符串名稱

參數(shù)interval的設(shè)定值如下:

值縮寫(xiě)(SqlServer)(Access和ASP)說(shuō)明

YearYyyyyy年1753~9999

Quarterq季1~4

MonthMmm月1~12

DayofyearDyy一年的日數(shù),一年中的第幾日1-366

DayDdd日,1-31

WeekdayDww一周的日數(shù),一周中的第幾日1-7

WeekWkww周,一年中的第幾周0~51

HourHhh時(shí)0~23

MinuteMin分鐘0~59

SecondSss秒0~59

MillisecondMs-毫秒0~999

access和asp中用date()和now()取得系統(tǒng)日期時(shí)光;其中DateDiff,DateAdd,DatePart也同是能用于

Access和asp中,這些函數(shù)的用法也類似

舉例:

1.GetDate()用于sqlserver:selectGetDate()

2.DateDiff('s','2022-07-20','2022-7-2522:56:32')返回值為514592秒

DateDiff('d','2022-07-20','2022-7-2522:56:32')返回值為5天

3.DatePart('w','2022-7-2522:56:32')返回值為2即星期一(周日為1,周六為7)

DatePart('d','2022-7-2522:56:32')返回值為25即25號(hào)

DatePart('y','2022-7-2522:56:32')返回值為206即這一年中第206天

DatePart('yyyy','2022-7-2522:56:32')返回值為2022即2022年

詳細(xì)的語(yǔ)法:

日期函數(shù)用來(lái)操作DATETIME和SMALLDATETIME類型的數(shù)據(jù),執(zhí)行算術(shù)運(yùn)算。與其它函數(shù)一樣,可以在

Select語(yǔ)句的Select和Where子句以及表達(dá)式中使用日期函數(shù)。其使用辦法如下:日期函數(shù)參數(shù),其中參數(shù)個(gè)數(shù)應(yīng)不同的函數(shù)而不同。

·DAY()

DAY()函數(shù)語(yǔ)法如下:

DAY()

DAY()函數(shù)返回date_expression中的日期值。

·MONTH()

MONTH()函數(shù)語(yǔ)法如下:

MONTH()

MONTH()函數(shù)返回date_expression中的月份值。

與DAY()函數(shù)不同的是,MONTH()函數(shù)的參數(shù)為整數(shù)時(shí),一律返回整數(shù)值1,即SQLServer認(rèn)為其

是1900年1月。

·YEAR()

YEAR()函數(shù)語(yǔ)法如下:

YEAR()

YEAR()函數(shù)返回date_expression中的年份值。

提示:在使用日期函數(shù)時(shí),其日期值應(yīng)在1753年到9999年之間,這是SQLServer系統(tǒng)所能識(shí)別的日期范

圍,否則會(huì)浮現(xiàn)錯(cuò)誤。

·DATEADD()

DATEADD()函數(shù)語(yǔ)法如下:

DATEADD(,,)

DATEADD()函數(shù)返回指定日期date加上指定的額外日期間隔number產(chǎn)生的新日期。參數(shù)“datepart

”在日期函數(shù)中常常被使用,它用來(lái)指定構(gòu)成日期類型數(shù)據(jù)的各組件,如年、季、月、日、星期等。

其取值如表4-9所示:

·DATEDIFF()

DATEDIFF()函數(shù)語(yǔ)法如下:

DATEDIFF()(,,)

DATEDIFF()函數(shù)返回兩個(gè)指定日期在datepart方面的不同之處,即date2超過(guò)date1的差距值,其

結(jié)果值是一個(gè)帶有正負(fù)號(hào)的整數(shù)值。針對(duì)不同的datepart,DATEDIFF()函數(shù)所允許的最大差距值不

一樣,如:datepart為second時(shí),DATEDIFF()函數(shù)所允許的最大差距值為68:年datepart為

millisecond時(shí),DATEDIFF()函數(shù)所允許的最大差距值為24天20小時(shí)30

分23秒647毫秒。

·DATENAME()

DATENAME()函數(shù)語(yǔ)法如下:

DATENAME(,

DATENAME()函數(shù)以字符串的形式返回日期的指定部分此部分。由datepart來(lái)指定。

·DATEPART()

DATEPART()函數(shù)語(yǔ)法如下:

DATEPART(,)

DATEPART()函數(shù)以整數(shù)值的形式返回日期的指定部分。此部分由datepart來(lái)指定。

DATEPART(dd,date)等同于DAY(date)

DATEPART(mm,date)等同于MONTH(date)

DATEPART(yy,date)等同于YEAR(date)

·GETDATE()

GETDATE()函數(shù)語(yǔ)法如下:

GETDATE()

GETDATE()函數(shù)以DATETIME的缺省格式返回系統(tǒng)當(dāng)前的日期和時(shí)光,它常作為其它函數(shù)或命令的參

數(shù)使用。

在開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用中,常常會(huì)碰到處理時(shí)光的問(wèn)題,如查詢指定時(shí)光的記錄等。下面就這些常見(jiàn)的問(wèn)題

,結(jié)合自己的一些閱歷,和大家探討一下這類問(wèn)題。

首先介紹一下,SQLServer里處理時(shí)光的幾個(gè)主要函數(shù)的用法:

getdate()函數(shù):取得系統(tǒng)當(dāng)前的日期和時(shí)光。返回值為datetime類型的。

用法:getdate()

例子:

selectgetdate()asdte,dateadd(day,-1,getdate())asnowdat

輸出結(jié)果:

dtenowdat

1999-11-2119:13:10.0831999-11-2019:13:10.083

(1row(s)affected)

datepart()函數(shù):以整數(shù)的形式返回時(shí)光的指定部分。

用法:datepart(datepart,date)

參數(shù)說(shuō)明:datepart時(shí)要返回的時(shí)光的部分,常用取值year、month、day、hour、minute。

date是所指定的時(shí)光。

例子:

SELECTDATEPART(month,GETDATE())AS'MonthNumber'

輸出結(jié)果:

MonthNumber

11

(1row(s)affected)

dateadd()函數(shù):通過(guò)給指定的時(shí)光的指定部分加上一個(gè)整數(shù)值以返回一個(gè)新時(shí)光值。

用法:dateadd(datepart,number,date)

參數(shù)說(shuō)明:datepart(同上)

date(同上)

number要增強(qiáng)的值,整型,可正可負(fù),正當(dāng)返回date之后的時(shí)光值,負(fù)值返回date

之前的時(shí)光值

例子:

selectgetdate()astoday

selectdateadd(day,-1,getdate())

selectdateadd(day,1,getdate())

輸出:

today

1999-11-2119:42:41.410

(1row(s)affected)

yesterday

1999-11-2019:42:41.410

(1row(s)affected)

tomorrow

1999-11-2219:42:41.410

(1row(s)affected)

datediff()函數(shù):返回兩個(gè)時(shí)光以指定時(shí)光部分來(lái)計(jì)算的差值。返回整數(shù)值。如1991-6-12和1991-6-21

之間以天

來(lái)算相差

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論