现在有段查询语句,根据用户要求需要同时查询出上一条和下一条的记录来。小弟目前的想法是这样:SELECT *
FROM
(SELECT ROWNUM RN, T.*
FROM
(<原来的SQL>) T)
然后再根据查询得到的结果提交到应用程序中去处理。不过小弟想把这个增强下,能不能直接使用一句SQL就查询出上一条、本条和下一条这三条记录。提前谢谢各位了
FROM
(SELECT ROWNUM RN, T.*
FROM
(<原来的SQL>) T)
然后再根据查询得到的结果提交到应用程序中去处理。不过小弟想把这个增强下,能不能直接使用一句SQL就查询出上一条、本条和下一条这三条记录。提前谢谢各位了
解决方案 »
- TRUNC怎么用
- 创建临时表
- Oracle关于instr和like的几个问题
- 哥哥,姐姐们,送分了。
- orcale pl/sql 中 ":" 符號用加在某變量前是作么用的
- orcal是否支持SQL语句???
- ???连接两个数据库
- 哪位大侠知道 ORACLE内部培训视频教学22讲 的下载地址啊,,谢谢了,,下载到马上给分
- 中秋節來臨之際,祝大家幸福安康,工作順利!
- 用OEM进行数据导出时出现下列错误"couldn't open "D:/ORACLE/ORADATA/ORCL/EXPORT.LOG": no such file or directory",why?有些配置都配了
- 在oracle存储过程中实现分区怎么写啊,想利用for循环实现
- 求一条SQL语句
sample:
select id,name,salary,lag(salary,1,0) over (order by salary) lag,
lead(salary,1,salary) over (order by salary) lead from emp;
2 scott.emp;EMPNO ENAME SAL LAG LEAD
----- ---------- --------- ---------- ----------
7369 SMITH 800.00 0 950
7900 JAMES 950.00 800 1100
7876 ADAMS 1100.00 950 1250
7521 WARD 1250.00 1100 1250
7654 MARTIN 1250.00 1250 1300
7934 MILLER 1300.00 1250 1500
7844 TURNER 1500.00 1300 1600
7499 ALLEN 1600.00 1500 2450
7782 CLARK 2450.00 1600 2850
7698 BLAKE 2850.00 2450 2975
7566 JONES 2975.00 2850 3000
7788 SCOTT 3000.00 2975 3000
7902 FORD 3000.00 3000 5000
7839 KING 5000.00 3000 500014 rows selected