PB中日期、时间的处理
一、数据窗中:定义两个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 ,然后得出格式
页:
[1]