读书人

时间日期计算有关问题,

发布时间: 2012-02-07 17:45:36 作者: rapoo

时间日期计算问题,急
要求:
在现有的时间上,加上指定的分或者秒或者小时后,求一个新的时间值.
如:2007-03-31 23:59:02 +1小时2分20秒=2007-04-01 1:1:22即在原有日期上,过了一个指定时间后,得到一个准确的新日期.

[解决办法]
SQL中的日期函数 DATEADD(depart,number,data)
[解决办法]
Delphi中的TDateTime实际上是个Double类型的实数
在TDateTime中, 1表示1天, 1/24表示1个小时, 1/(24*60)表示1分钟, 1/(24*60*60)表示1秒

procedure TForm1.Button1Click(Sender: TObject);
var
ATime : TDateTime;
begin
ATime := StrToDateTime( '2007-03-31 23:59:02 ');
ShowMessage (FormatDateTime( 'YYYY-MM-DD HH:MM:SS ', ATime));
//加1小时2分20秒
ATime := ATime + 1 / 24 + 2 /(24 * 60) + 20 /(24 * 60 * 60);
ShowMessage (FormatDateTime( 'YYYY-MM-DD HH:MM:SS ', ATime));
end;

[解决办法]
declare @Time datetime

select @Time = '2008-05-02 12:12:12 '
select @Time = dateadd(day,1,@time)
select @Time = dateadd(hour,02,@time)
select @Time = dateadd(minute,5,@time)

select @time

读书人网 >.NET

热点推荐