我取当前时间和过期时间的差。是个整数的。 
seskinedit16.Text:=datetostr((now-query1.FieldValues['jsrq'])*24);
这样写有问题。 
我不知道该怎么写了。
我是只菜鸟, 希望大家多指教些关于日期的运算。

解决方案 »

  1.   

    now-query1.fieldByName('jsrq').asDatetime 才行吧?
      

  2.   

    trunc(now-query1.Fieldbyname('jsrq').asdatetime);
      

  3.   

    trunc(now) - Trunc(query1.Fieldbyname('jsrq').asdatetime)
      

  4.   

    SELECT DATEDIFF(Day,startdate,enddate) AS newday FROM ...
    SELECT DATEDIFF(Hour,startdate,enddate) AS newhour FROM ...
    SELECT DATEDIFF(minute,startdate,enddate) AS newminute FROM ...
    SELECT DATEDIFF(second,startdate,enddate) AS newsecond FROM ...
    ...
      

  5.   

    function DaysBetween(const ANow, AThen: TDateTime): Integer;
      

  6.   

    seskinedit16.Text:=inttostr(trunc(now-query1.Fieldbyname('jsrq').asdatetime))不行??
      

  7.   

    http://soft.56kc.com/Filedown.aspx?FID=198
      

  8.   

    建议看一下MSSQL的帮助,里面对日期型函数有详细的介绍