trunc(Strtodatetime('2002-01-01')-Strtodatetime('1999-02-02'));

解决方案 »

  1.   

    參考我的代碼;
       firstday:=dm.query2.FieldByName ('chk_day').AsDateTime;
        lastday:=Now;
        dm.Database1.StartTransaction ;
        try
         IF lastday-firstday>0 Then
           For p:=Trunc(firstday)+1 to Trunc(lastday) do
            begin
               For n:=0 to m-1 do
                 begin
                  ....
      

  2.   

    日期型数据实际就是float型,所以可以直接减,结果的整数部分就是二者相差的天数。若你用Delphi6可以直接使用下列函数:
    function DaysBetween(const ANow, AThen: TDateTime): Integer;