如何得到 N 天前的日期?(100分)

  • 主题发起人 主题发起人 完颜康
  • 开始时间 开始时间

完颜康

Unregistered / Unconfirmed
GUEST, unregistred user!
比如今天是2001-12-2 三天前就是 2001-11-29
 
Oracle:
select sysdate - 3 from dual
 
procedure TForm1.Button1Click(Sender: TObject);
var d:Tdate;
begin
d:=strtodate('2001-12-2');
d:=d-3;
showmessage(FormatDateTime('yyyy-mm-dd',d));
end;
 
result := ADate - N;
 
可以用日期减数字
用 2001-12-2 减 3 就是 2001-11-29
 
procedure TForm1.Button1Click(Sender: TObject);
var
ss:Tdate;
n:integer;
begin
ss:=now;
ss:=d-n;
showmessage(FormatDateTime('yyyy-mm-dd',ss));
end;
其中的ss是当前的日期,n是你要求的 几天前的天数。
 
DecodeDate(Date-N,Year,Month,Day);
Year,Month,Day是返回值,date是一个函数返回当前日期
 
datetime类型是以浮点数表示的,整数部分表示日期,小数部分表示时间
表示日期的单位就是“天”
用当天的日期减去N就是N天前的日期了
 
BsforeDate:=now-n;
 
多人接受答案了。
 
后退
顶部