如何用DateTimePicker和ADOQuery对表中的日期进行查询,请各位高手指点。

解决方案 »

  1.   

    如果是 SQL SERVER 的话,可以这样写 SQL :
    select * from table1 where operatedate >= '2002/11/12 12:33:02'SQL 中相关的日期操作函数:
    DateDiff()
    可以计算出两个日期的距离(就是相差多长时间)。可以看看 SQL 的 Books online.
      

  2.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from tablename where rq>=:date1');
    query1.ParamByName('date1').AsDatetime:=FormatDatetime('yyyy-mm-dd',DateTimepicker1.datetime);
    query1.prepare;
    query1.open;
      

  3.   

    ADOQuery1.SQL.Add('select * from datebase where 日期 between :time1 and :time2');
    ADOQuery1.Parameters.ParamByName('time1').Value:=DateTimePicker1.Date;
    ADOQuery1.Parameters.ParamByName('time2').Value:=DateTimePicker2.Date;
      

  4.   

    var
    sqlstring:string;
    begin
    query1.close;
    query1.sql.clear;
    query1.sql.text;='select * from tablename where rq>=;
    query1.ParamByName('date1').AsDatetime:=FormatDatetime('yyyy-mm-dd',DateTimepicker1.datetime);
    query1.prepare;
    query1.open;
    end;
      

  5.   

    上面的还没写完,不小心发出去了
    应该这样:
    var
    sqlstring:string;
    begin
      //如果是大于或小于
      sqlstring:='select * from table where rq>'+''''+datetostr (DateTimepicker1.datetime)+'''';
      //如果是在两个日期之间就用BETWEEN 
    sqlstring:='select * from table where rq between'+''''+datetostr (DateTimepicker1.datetime)+''''+'and'+''''+datetostr(DateTimepicker2.datetime)+'''';
      query1.close;
      query1.sql.clear;
      query1.sql.text;=sqlstring;
      query1.prepare;
    query1.open;
    end;