字段的类型为“时间日期”型。格式常规日期。
例如:2005-11-22 下午 01:33:00
但是怎么选出从2005-11-15至2005-11-22日的所有记录?

解决方案 »

  1.   

    select * from table where rq between #2005-11-15 00:00:00# and #2005-11-22 23:59:59#
      

  2.   

    select * from table where 时间>=#2005-11-15 00:00:00#  and  时间<=#2005-11-15 00:00:00#;
    试试呢
      

  3.   

    delphi7+win2000下测试通过:
      
    with  query1 do
      begin
        Close;
        Sql.Clear;
        Sql.Add('select * from bgd where ');
        sql.Add('cxrq>=:cxrq1 and cxrq<=:cxrq2 ');
        Parameters.ParamValues['cxrq1']:=FormatDateTime('yyyy-mm-dd hh:mm:ss',strtodatetime('2005-11-15 00:00:00'));
        Parameters.ParamValues['cxrq2']:=FormatDateTime('yyyy-mm-dd hh:mm:ss',strtodatetime('2005-11-22 23:59:59'));
        Open;
      end;
      

  4.   

    日期字段的格式为"2005-11-22 下午 01:33:00"这样的!只能截取字符串了
    把"2005-11-22 下午 01:33:00"截为"2005-11-22"
    然后对于“选出从2005-11-15至2005-11-22日的所有记录”
    select * from table where 时间>=#2005-11-15 00:00:00#  and  时间<#2005-11-23 00:00:00#;
      

  5.   

    if DateTimePicker1.Checked then sSql := sSql+' and CreateDate>='''+DatetoStr(DateTimePicker1.date)+'''';
      if DateTimePicker2.Checked then sSql := sSql+' and CreateDate<'''+DatetoStr(DateTimePicker2.date+1)+'''';直接这样就行呀,我刚写了一个小程序就用ACCESS来做数据库。
    如果还不行,你把字段类型改成 文本形式的。再试试。不过应该可以。我这没问题。