现在我在数据库中存有一个日期类型 ,想通过这个日期 和当前日期进行比较,得到相隔天数?如何处理!

解决方案 »

  1.   

    Trunc(Table1.FieldByName('datefield').AsDateTime-now);得到的整数就是天数。
      

  2.   

    或者:
    Trunc(now-Table1.FieldByName('datefield').AsDateTime);
      

  3.   

    procedure TF_test.Button1Click(Sender: TObject);
    var
      c:extended;
    begin
      c:=strtodate('2004-3-1')-strtodate('2004-1-1');
      showmessage(floattostr(c));
    end;
    会得到60天
      

  4.   

    无论是数据库还是delphi,都可以日期相减,1代表一天。
      

  5.   

    date1-date2;//天数
    (date1-date2)*24;//小时数
    (date1-date2)*24*60;//分钟数
    (date1-date2)*24*60*60;//秒数
      

  6.   

    datediff(day,要相减的日期,getdate())
      

  7.   

    function GetDatePart(ADateTime:TDateTime):TDateTime;
    begin
      Result:=Int(ADateTime);
    end;//去掉日期部分//
    function GetTimePart(ADateTime:TDateTime):TDateTime;
    begin
      Result:=Frac(ADateTime);
    end;GetDatePart(Date1)-GetDatePart(Date2)
      

  8.   

    uses dateutils;
    dayspan(date1,date2)
      

  9.   

    datediff(day,YourDate,getdate())