| 发表于:2007-11-10 23:55:441楼 得分:0 |
lead() 和lag()函数 select * from tablename a, (select * from (select t.*, lag (to_char(datetime),5) over (order by datetime) as time1 --取得上第五条datatime的值time1. lead(to_char(datetime),5) over (order by datetime) as time2 --取得下第五条datatime的值time2. from tablename t) t1 where datetime=2007-11-06 --只取datetime='2007-11-06' 的记录的time1,time2 )b where a.datetime> b.time1 and a.datetime <time2 实现得不知对不对!!! 思路是先用lead() 和lag()解析函数求tablename中每个datetime的前,后第五个值(前,列名为time1,后,列名为time2) 然后取datetime='2007-11-06' 的那行记录中的time1,time2, 再以time1,time2 为条件查询表 | | |
|