关于时间的查询(100分)

  • 主题发起人 主题发起人 felong11
  • 开始时间 开始时间
F

felong11

Unregistered / Unconfirmed
GUEST, unregistred user!
我的数据库中有两个字段:date 和 time
我现在要选择日期时间在一段时间之内怎么做??
1。用查询
2。用filter
请指教!!
 
where date between(#...# , #...#) and time between(#...# , #...#)
 
where rq>:rq1 and rq<:rq2 and t<:t1 and t>t2
parambyname('rq1').asdatetime:=datetimepicker1.date
 
关于数据库中的日期和时间问题在DFW上有很多讨论,可以查找看一看.
日期和时间在数据库中的存放与DBMS和OS都有关系,并且同一OS因设置不同其格式也不同,
所以这要根据你的具体环境也定.
 
使用filter很困难
使用查询,最好用参数,对于每种类型的都可以使用参数,也最好使用参数
参数可以不起名字,直接使用索引来访问
with query1 do begin
close; sql.clear;
sql.add('select * from table1 where field1>=: and field1<=:');
params[0].asdatetime:=datetimepicker1.date;
params[1].asdatetime:=datetimepicker2.date;
try open except end;
end;
 
加入sql 的时候他说
不能加入“:”作为查询。时间肯定有:的嘛!
 
Access下
where date between(#...# , #...#) and time between(#...# , #...#)
 
请问你说的####是什么,清举个例子
 
例子:select * from table1 where date between #2002-9-1# and #2002-9-4#
其余雷同
 
对于paradox的呢?
 
paradox很简单,直接用strtodate('2002-9-1')
 
建议不要硬性编码
如:'2002-9-1'
在不同的系统下时间的分隔不一样
如上面的'-'在繁体下就为'/'
 
接受答案了.
 
后退
顶部