我有一个表Rec,是记录消费记录的。其中有两个字段:Rec_Date和Rec_Time分别记录消费日期和消费时间,如:Rec_Date    Rec_Time
         2004-9-12    10:23:00
         2004-9-13    12:46:10
  虽然Rec_Time字段中我加进记录时是只是加进了时间,但当我用查询语句查询Rec_Time这列时返回的记录全是诸如1899-12-30 10:23:00的,虽然在显示时可以用TDateTimeField(adoQuery4.FieldByName('Rec_Time')).DisplayFormat := 'HH:MM:SS';这个语句来控制只显示时间,但当我查询同一日的两个时刻之间的消费记录时查询结果却为空,我的查询语句中的where部分简略如下:
      ...and Rec_Time between formatdatetime('hh:mm:ss',datetimepicker2.DateTime
and formatdatetime('hh:mm:ss',datetimepicker4.DateTime)...
其中datetimepicker2和datetimepicker4的类型都是dtkTime类型的,用以输入起始时间和终止时间,但是查询结果为空。为什么呢?我用同样的方法查询某两日之间的消费记录时就行,我的查询语句如下:
      ...and Rec_Date between formatdatetime('yyyy-mm-dd',datetimepicker1.DateTime)
and formatdatetime('yyyy-mm-dd',datetimepicker3.DateTime)...
其中datetimepicker1和datetimepicker3的类型都是dtkDate类型的,用以输入起始日期和终止日期,
但就能查询成功,请问为什么查两个时刻之间就不成功呢?若能解决,万分感谢!