明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線(xiàn)學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

ASP與SQL結(jié)合處理時(shí)間小解

[摘要]在開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用中,經(jīng)常會(huì)遇到處理時(shí)間的問(wèn)題,如查詢(xún)指定時(shí)間的記錄等。下面就這些常見(jiàn)的問(wèn)題,結(jié)合自己的一些經(jīng)驗(yàn),和大家探討一下這類(lèi)問(wèn)題。 首先介紹一下,SQL Server里處理時(shí)間的幾個(gè)主要函數(shù)的用法: getdate()函數(shù):取得系統(tǒng)當(dāng)前的日期和時(shí)間。返回值為datetime類(lèi)型的。 用法:g...

在開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用中,經(jīng)常會(huì)遇到處理時(shí)間的問(wèn)題,如查詢(xún)指定時(shí)間的記錄等。下面就這些常見(jiàn)的問(wèn)題,結(jié)合自己的一些經(jīng)驗(yàn),和大家探討一下這類(lèi)問(wèn)題。
首先介紹一下,SQL Server里處理時(shí)間的幾個(gè)主要函數(shù)的用法:


getdate()函數(shù):取得系統(tǒng)當(dāng)前的日期和時(shí)間。返回值為datetime類(lèi)型的。
用法:getdate()
例子:
select getdate() as dte,dateadd(day,-1,getdate()) as nowdat
輸出結(jié)果:
dte nowdat
--------------------------- ---------------------------
1999-11-21 19:13:10.083 1999-11-20 19:13:10.083

(1 row(s) affected)

datepart()函數(shù):以整數(shù)的形式返回時(shí)間的指定部分。
用法:datepart(datepart,date)
參數(shù)說(shuō)明:datepart時(shí)要返回的時(shí)間的部分,常用取值year、month、day、hour、minute。
date是所指定的時(shí)間。
例子:
SELECT DATEPART(month, GETDATE()) AS 'Month Number'
輸出結(jié)果:
Month Number
------------
11

(1 row(s) affected)

dateadd()函數(shù):通過(guò)給指定的時(shí)間的指定部分加上一個(gè)整數(shù)值以返回一個(gè)新時(shí)間值。
用法:dateadd(datepart,number,date)
參數(shù)說(shuō)明:datepart(同上)
date(同上)
number要增加的值,整型,可正可負(fù),正值返回date之后的時(shí)間值,負(fù)值返回date
之前的時(shí)間值
例子:
select getdate() as today
select dateadd(day,-1,getdate())
select dateadd(day,1,getdate())
輸出:
today
---------------------------
1999-11-21 19:42:41.410

(1 row(s) affected)

yesterday
---------------------------
1999-11-20 19:42:41.410

(1 row(s) affected)

tomorrow
---------------------------
1999-11-22 19:42:41.410

(1 row(s) affected)

datediff()函數(shù):返回兩個(gè)時(shí)間以指定時(shí)間部分來(lái)計(jì)算的差值。返回整數(shù)值。如1991-6-12和1991-6-21之間以天
來(lái)算相差9天,1998-6-12和1999-6-23按年算相差1年,1999-12-1和1999-3-12按月算相差9個(gè)月
用法:datediff(darepart,date1,date2)
參數(shù)說(shuō)明:datepart(同上)
date1、date2(同上date)
例子:
select datediff(month,'1991-6-12','1992-6-21') as a
輸出:
a
-----------
12

(1 row(s) affected) (出處:熱點(diǎn)網(wǎng)絡(luò))