一、数据窗中: 定义两个datetime型参数,at_from,at_end,(开始,结束) where 条件写成: where col_date >= :at_from and col_date < :at_end 如,1997-12-12 到 2000-01-02 则检索时就这样处理: datetime lt_from,lt_end lt_from = datetime(date('1997-12-12),time('00:00:00')) lt_end = datetime(date('2000-01-03',time('00:00:00')) dw_xxx.retrieve(lt_from,lt_end) 这样检索出来的数据就是绝对符合条件的。 二、数据窗过滤: ls_filter = & ' string(col_date,"yyyy-mm-dd") >="'+string(date1,'yyyy-mm-dd')+'" and string(col_date,"yyyy-mm-dd") <="'+string(date2,'yyyy-mm-dd')+'"' dw_xxx.setfilter(ls_filter) dw_xxx.filter() dw_xxx.sort() // 按原始顺序排序。 三、如果是嵌入SQL语法的时间查询,则: MSS sql Server,Sybase SYB,Sybase SQL Anywhere中 select * from table_xxx where beg_time >= ('2000-08-15 12:20:25:000'); ORACLE中: beg_time >= '15-9月-2000' ; // 奇怪的格式。 其他: 可以通过该RDBMS所带的 sql 工具来执行查询,select beg_time from xxx ,然后得出格式
|