在delphi里面,日期是double的,可是sql server里面,日期是字符串,那我在delphi里面嵌入sql语句的时候,要怎么比较两个日期的大小,也就是说,我在delphi里面输入一个日期,delphi是用double格式保存的,当我要用sql语句选择在两个日期之间的时候,当然不能直接比较了,格式不一样,怎么解决?

解决方案 »

  1.   

    FormatDateTime('YYYYMMDD',Now());
    FormatDateTime('YYYYMMDDHHNNSS',Now());
    FormatDateTime('YYYY-MM-DD HH:NN:SS',Now());
    datetimetostr(now())
    strtodatetime();
    直接减
    你还想怎么转换
      

  2.   

    sql语句里面的比较与数字比较类似:
    Select xxx From table Where (StartDate-Enddate)>30Select Xxx From table where StartDate >'2002-08-15'
      

  3.   

    我是打算这样的
    select xxx from tablename where(1=1)
    and 字段值(也就是字符串日期)>输入的开始日期值(已经被保存为double)
    and 字段值<输入的结束日期能写清楚点吗?
      

  4.   

    用datetime型的日期, 我的程序里有一个例子正常运行:
    sql.Add('select * from 用户交费表 where (截止日期-'+''''+datetimetostr(date)+''''+')<0 and (logo=1)');其中'截止日期'是datetime型的
      

  5.   

    select xxx from tablename where 字段值 between 输入的开始日期值 and 输入的结束日期
      

  6.   

    楼上两位的都可以,既可以用 Between ... End .... ,也可以用 >  <