一、GetDate() 函数
作用:
GetDate() 函数用于返回当前的时间和日期,返回值样式举例:2013/10/29 9:11:05
语法:
GetDate()
ASP 实例:
<%
'数据库链接定义省略
sql="SELECT GetDate() AS CurrentDateTime"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("CurrentDateTime")
end if
rs.close
set rs=nothing
%>
二、DateDiff() 函数
作用:
DateDiff() 函数返回“开始日期”与“结束日期”之间的差值(如:年、天数等)。
返回值类型:
DateDiff() 函数返回值类型为:Long(长整型),范围从 -2,147,483,648 到 2,147,483,647。
语法:
DateDiff(参数 , 开始日期 , 结束日期)
参数取值:
说明 |
参数写法 |
参数简写 |
最大 |
年 |
Year
|
yy |
|
季度 |
Quarter |
q |
|
月 |
Month |
m |
|
周 |
Week |
wk |
|
日 |
Day |
d |
|
小时 |
Hour |
hh |
|
分钟 |
Minute |
mi |
|
秒 |
Second |
s |
68年 |
毫秒 |
Millisecond |
ms |
24天20小时31分23.648秒 |
ASP 实例:
<%
'数据库链接定义省略
sql="SELECT DateDiff(ms,'2013-1-1','2013-1-25 20:31:23.648') AS DiffVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("DiffVal")
end if
rs.close
set rs=nothing
'输出:2147483646(毫秒)
sql="SELECT DateDiff(Week,'2013-10-20','2014-10-20') AS DiffVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write "
"&rs("DiffVal")
end if
rs.close
set rs=nothing
'输出:52(周)
sql="SELECT DateDiff(d,'2013-10-20',GetDate()) AS DiffVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write "
"&rs("DiffVal")
end if
rs.close
set rs=nothing
'当前系统日期为:2013-10-29,输出:9(天)
%>
三、DateAdd() 函数
作用:
DateAdd() 函数用于在指定日期增加(或减去)参数设定的间隔。
语法:
DateAdd(参数 , 加(减)间隔 , 指定日期)
参数取值:
说明 |
参数写法 |
参数简写 |
年 |
Year
|
yy |
季度 |
Quarter |
q |
月 |
Month |
m |
周 |
Week |
wk |
日 |
Day |
d |
小时 |
Hour |
hh |
分钟 |
Minute |
mi |
秒 |
Second |
s |
毫秒 |
Millisecond |
ms |
ASP 实例:
<%
'数据库链接定义省略
sql="SELECT DateAdd(day,5,'2013-1-1') AS DateAddVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("DateAddVal")
end if
rs.close
set rs=nothing
'输出:2013/1/6
sql="SELECT DateAdd(s,10,'2013-1-1') AS DateAddVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("DateAddVal")
end if
rs.close
set rs=nothing
'输出:2013/1/1 0:00:10
sql="SELECT DateAdd(mi,-1,'2013-1-1') AS DateAddVal"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("DateAddVal")
end if
rs.close
set rs=nothing
'输出:2012/12/31 23:59:00
%>
四、Convert() 函数
作用:
Convert() 函数用来将日期转换为指定样式的新数据类型。
语法:
Convert(数据类型(长度) , 需转换日期 , 样式参数)
常用参数取值:
样式参数 |
样式说明 |
长度 |
101 |
mm/dd/yyyy |
10 |
110 |
mm-dd-yyyy |
10 |
103 |
dd/mm/yyyy |
10 |
105 |
dd-mm-yyyy |
10 |
111 |
yyyy/mm/dd |
10 |
112 |
yyyymmdd |
8 |
108 |
hh:mm:ss |
8 |
114 |
hh:mm:ss:mmm |
12 |
120 |
yyyy-mm-dd hh:mm:ss |
19 |
121 |
yyyy-mm-dd hh:mm:ss.mmm |
23 |
ASP 实例:
<%
'数据库链接定义省略
sql="SELECT Convert(VarChar(19),GetDate(),120) AS DateConvert"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("DateConvert")
end if
rs.close
set rs=nothing
'输出:2013-10-29 11:07:44
sql="SELECT Convert(VarChar(12),GetDate(),114) AS DateConvert"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write "
"&rs("DateConvert")
end if
rs.close
set rs=nothing
'输出:11:11:14:563
%>
五、DatePart() 函数
作用:
DatePart() 函数用来返回日期(时间)参数指定的部份,如年、月、日、时、分、秒等。
语法:
DatePart(参数 , 日期)
参数取值:
说明
|
参数写法 |
参数简写 |
年 |
Year |
yy |
季度 |
Quarter |
q |
月 |
Month |
m |
周 |
Week |
wk |
日 |
Day |
d |
小时 |
Hour |
hh |
分钟 |
Minute |
mi |
秒 |
Second |
s |
毫秒 |
Millisecond |
ms |
ASP 实例:
<%
'数据库链接定义省略
sql="SELECT DatePart(mi,'2013-10-01 23:12:09.456') AS PartDate"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("PartDate")
end if
rs.close
set rs=nothing
'输出:12(分钟部分)
sql="SELECT DatePart(ms,'2013-10-01 23:12:09.456') AS PartDate"
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open sql, conn, 1, 1
if not(rs.bof and rs.eof) then
Response.Write rs("PartDate")
end if
rs.close
set rs=nothing
'输出:457(毫秒部分,有误差)
%>
SYSDATE | |
2 | --◎ 可得到目前系統的時間 |
3 | |
4 | ex. |
5 | select sysdate from dual; |
6 | |
7 | sysdate |
8 | ---------- |
9 | 20-SEP-07 |
10 | |
11 | 常用之日期格式 |
12 | |
13 | 日期格式 說明 |
14 | ------------------------------------------------------------------------ |
15 | YYYY/MM/DD -- 年/月/日 |
16 | YYYY -- 年(4位) |
17 | YYY -- 年(3位) |
18 | YY -- 年(2位) |
19 | MM -- 月份 |
20 | DD -- 日期 |
21 | D -- 星期 |
22 | -- 星期日 = 1 星期一 = 2 星期二 = 3 |
23 | -- 星期三 = 4 星期四 = 5 星期五 = 6 星期六 = 7 |
24 | |
25 | DDD -- 一年之第幾天 |
26 | WW -- 一年之第幾週 |
27 | W -- 一月之第幾週 |
28 | YYYY/MM/DD HH24:MI:SS -- 年/月/日 時(24小時制):分:秒 |
29 | YYYY/MM/DD HH:MI:SS -- 年/月/日 時(非24小時制):分:秒 |
30 | J -- Julian day,Bc 4712/01/01 為1 |
31 | RR/MM/DD -- 公元2000問題 |
32 | -- 00-49 = 下世紀;50-99 = 本世紀 |
33 | ex. |
34 | select to_char(sysdate,'YYYY/MM/DD') FROM DUAL; -- 2007/09/20 |
35 | select to_char(sysdate,'YYYY') FROM DUAL; -- 2007 |
36 | select to_char(sysdate,'YYY') FROM DUAL; -- 007 |
37 | select to_char(sysdate,'YY') FROM DUAL; -- 07 |
38 | select to_char(sysdate,'MM') FROM DUAL; -- 09 |
39 | select to_char(sysdate,'DD') FROM DUAL; -- 20 |
40 | select to_char(sysdate,'D') FROM DUAL; -- 5 |
41 | select to_char(sysdate,'DDD') FROM DUAL; -- 263 |
42 | select to_char(sysdate,'WW') FROM DUAL; -- 38 |
43 | select to_char(sysdate,'W') FROM DUAL; -- 3 |
44 | select to_char(sysdate,'YYYY/MM/DD HH24:MI:SS') FROM DUAL; -- 2007/09/20 15:24:13 |
45 | select to_char(sysdate,'YYYY/MM/DD HH:MI:SS') FROM DUAL; -- 2007/09/20 03:25:23 |
46 | select to_char(sysdate,'J') FROM DUAL; -- 2454364 |
47 | select to_char(sysdate,'RR/MM/DD') FROM DUAL; -- 07/09/20 |