下表汇总了SQL Server 中经常用到的几个时间函数
函数 |
描述 |
GETDATE() |
返回当前日期和时间 |
CONVERT() |
用不同的格式显示日期/时间 |
DATEDIFF() |
返回两个日期之间的时间 |
DATEPART() |
返回日期/时间的单独部分 |
DATEADD() |
在日期中添加或减去指定的时间间隔 |
本节重点介绍前两种函数。
1. SQL Server GETDATE() 函数
- 该函数比较简单,能方便地从 SQL Server 返回当前的时间和日期。
- 实例:
SELECT GETDATE() AS now
- 还有比较常用的就是在设计数据库时,为字段设置默认值。当插入数据时,如果该字段未设置,则为当前时间。
CREATE TABLE UserInfo(
iID int identity(1,1) not null primary key,
sUserName varchar(50),
regtime datetime not null default getdate()
)
- 当插入数据时,如果该字段未设置,则为当前时间。
2. CONVERT(data_type(length),date,style) 函数
- 该函数可以将日期以指定格式进行显示。 data_type(length)表示要转换成的数据长度。Date指需要转换的值。style 规定日期/时间的输出格式。
- style 值及输出格式如下表所示:
Style ID |
Style 格式 |
100 或者 0 |
mon dd yyyy hh:miAM (或者 PM) |
101 |
mm/dd/yy |
102 |
yy.mm.dd |
103 |
dd/mm/yy |
104 |
dd.mm.yy |
105 |
dd-mm-yy |
106 |
dd mon yy |
107 |
Mon dd, yy |
108 |
hh:mm:ss |
109 或者 9 |
mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
110 |
mm-dd-yy |
111 |
yy/mm/dd |
112 |
yymmdd |
113 或者 13 |
dd mon yyyy hh:mm:ss:mmm(24h) |
114 |
hh:mi:ss:mmm(24h) |
120 或者 20 |
yyyy-mm-dd hh:mi:ss(24h) |
121 或者 21 |
yyyy-mm-dd hh:mi:ss.mmm(24h) |
126 |
yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
130 |
dd mon yyyy hh:mi:ss:mmmAM |
131 |
dd/mm/yy hh:mi:ss:mmmAM |
- 几个常用的转换l实例:
SELECT CONVERT(varchar(20),GETDATE() ,111)
SELECT CONVERT(varchar(20),GETDATE() ,112)
SELECT CONVERT(varchar(20),GETDATE() ,120)