日期:2014-05-17  浏览次数:20811 次

转换日期的问题
数据库中有个日期类型字段,取出来显示的格式为2007-4-3 14:30:20,我想改变显示为如果是当天:今天   14:30:20,如果是昨天:昨天 14:30:20。
我先想到的是提取字段的日期部分,再与当天的日期相减,如果为0,则是今天,如果为1,则是昨天,这办法好吗?还有没有更好的方式?

------解决方案--------------------
datediff
------解决方案--------------------
DATEDIFF
返回跨两个指定日期的日期和时间边界数。

语法
DATEDIFF ( datepart , startdate , enddate )

参数
datepart

year yy, yyyy
quarter qq, q
Month mm, m
dayofyear dy, y
Day dd, d
Week wk, ww
Hour hh
minute mi, n
second ss, s
millisecond

是规定了应在日期的哪一部分计算差额的参数。

返回类型
integer

注释
startdate 是从 enddate 减去。如果 startdate 比 enddate 晚,返回负值。


------解决方案--------------------
theDate= "2007-4-2 14:30:20 "
if DateDiff( "d ", Now, theDate) = 0 then
strMsg = "今天 " & FormatDateTime(theDate, 3)
elseif DateDiff( "d ", theDate,Now) = 1 then
strMsg = "昨天 " & FormatDateTime(theDate, 3)
end if
Response.Write strMsg