MSSQL中利用GETDATE函数获取时间(mssql 获取时间函数)

MSSQL中利用GETDATE函数获取时间

Microsoft SQL Server(MSSQL)的内置函数GETDATE()可以用来获取系统当前的日期时间。其返回值是一个datatime数据类型,获取到的时间包含有秒,如果仅需要获取日期,可以将其转换为date数据类型,也可以将其截取,只使用关心的部分。

GETDATE()函数非常适合用来生成自增序列,这样可以避免数据容量的增长。例如:

CREATE TABLE TEST

(

ID INT IDENTITY (1,1),

DATE_ TIME DATETIME NOT NULL DEFAULT (GETDATE ())

)

上面的表结构中,DATE_TIME列将每次插入新记录时都使用GETDATE()函数去获取系统当前的日期时间,相当于一个自增序列,但却不会像传统的自增序列一样使数据容量增大。

此外,也可以结合DATEADD,DATEPART,DATEDIFF等函数,来实现一些复杂的时间处理。比如下面的查询:

SELECT GETDATE() as d1,

DATEADD(day,7,GETDATE) as d2,

DATEPART(yy,GETDATE) as y,

DATEDIFF(MILLISECOND,getdate()-7,getdate()) as diff

上面的语句利用GETDATE()获取系统当前的日期和时间,利用DATEADD(),增加7天,结果为d2;结合DATEPART()函数,截取出其中的年份,结果为y;最后结合DATEDIFF(),计算getdate()减去7天所相差的毫秒数,结果为diff。

因此,MSSQL中的GETDATE()函数可以用来方便且快捷的获取并操作系统当前的日期。与GETDATE()类似的函数还有DATE(),SYSDATETIME(),GETUTCDATE()等,都可以用来获取系统当前的日期。


数据运维技术 » MSSQL中利用GETDATE函数获取时间(mssql 获取时间函数)