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

解决方案 »

  1.   

    SQL中的日期函数 DATEADD(depart,number,data)
      

  2.   

    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;
      

  3.   

    declare @Time datetimeselect @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