那将把时间等于time1的记录查出来,相当于条件为 date = time1

解决方案 »

  1.   

    如果当time1=time2是就查找全部记录,这样用sql语句怎么操作,可以实现吗?
    快帮帮我
      

  2.   

    相等的时候不加到SQL语句中不就可以了么?
      

  3.   

    你的TIME1和TIME2肯定是参数
    IF TIME1>=TIME2 then query.sql.text :='select * from 表'
    else query.sql.text:='select * from 表 between time1 and time2';
      

  4.   

    with query1 do
    begin
      close;
      sql.clear;
      sql.add('select * from 表名 ');
      if time1 = time2 then
      begin
        sql.add('where 表名.time = :t');
        parambyname('t').datetime := time1;
      end
      else
      begin
        sql.add('where 表名.time > :t1 and 表名.time < :t2');
        //假设tim1<time2
        parambyname('t1').datetime := time1;
        parambyname('t2').datetime := time2;
      end;
      open;
    end;