Query.Sql.Add('Select * From Where 日期>=date1 and 日期<=Date2');

解决方案 »

  1.   

    date1:=strtodate('1977-05-25');
    date2:=strtodate('1978-05-25');
    Query.Sql.Add('Select * From Where 日期 between :date1 and :Date2');
    Query.Parameters.ParamByName('date1').Value:=;date1;
    Query.Parameters.ParamByName('date1').Value:=;date2;
      

  2.   

    date1 和 date2 为 string 
    上述方法行不通,
    我是用Query.filter的但是不方便
     Query.filter:= 
    销售日期 <= ' + DateToStr(Date1) and '销售日期 >= ' + DateToStr (DateTimePicker1.Date)
    query.filtered:= True;
    这样可以实现,但是用SQL命令会报错‘类型不匹配’
    还请各位高手赐教!!!!
      

  3.   

    date1 和 date2 是8位(20010101)还是10位(2001-01-01)
      

  4.   

    paradox 是否支持between and 不太清楚
    你用
    Where 日期>=date1 and 日期<=Date2 应该可以
      

  5.   

    string在数据库中也是可以比较的,说‘类型不匹配’,可能数据库中那个日期字段中有包括具体时间,datetostr(date1)后比较的就是字符每一个的比较了,
    用:
     TonyJoule(寒星㊣) (2001-12-3 13:23:06)  得0分 
    Query.Sql.Add('Select * From Where 日期>=date1 and 日期<=Date2');
     一般都是可以的啊!
      

  6.   

    对不起,我的‘日期’是TdateTime
      

  7.   

    Query.filter:=  '销售日期 <= ' + #39 + DateToStr(Date1) + #39 + ' and 销售日期 >= ' + #39 + DateToStr (DateTimePicker1.Date) + #39 ;试试
      

  8.   

    我说了filter 可以用
    我想用SQL命令来实现,我现在得用一个复合查询,先按时间滤一遍,再进行汇总!
      

  9.   

    Query.SQL.Add('select * from xxxxtable where 销售日期 <= ' + #39 + DateToStr(Date1) + #39 + ' and 销售日期 >= ' + #39 + DateToStr (DateTimePicker1.Date) + #39 ;
      

  10.   

    to Nizvoo(瓦匠泥) 
      报错:类型不匹配,
      

  11.   

    字段类型是datatime吗???????
      

  12.   

    Query.SQL.Add('select * from xxxxtable where 销售日期 <= ' + DateToStr(Date1) + ' and 销售日期 >= ' + DateToStr (DateTimePicker1.Date) ;
    这样的应该可以的。
    我有个程序就是这么着的。