1.我用的是PLSQL Developer连接的Oracle数据库
2.我想从表T2011中按照某条件选出某几行进行操作
3.将选出的这几行进行排序
4.用上一行某列的值减去下一行某列的值关键的第4步,应该怎么写?表T2011
列A 列B 列C
2001 1 2
2002 8 4
2003 6 6
2004 9 8
……
……
……
我想用每行的B列的值减去下一行C列的值并且输出输出为
-3
2
-2
……
……
……
2.我想从表T2011中按照某条件选出某几行进行操作
3.将选出的这几行进行排序
4.用上一行某列的值减去下一行某列的值关键的第4步,应该怎么写?表T2011
列A 列B 列C
2001 1 2
2002 8 4
2003 6 6
2004 9 8
……
……
……
我想用每行的B列的值减去下一行C列的值并且输出输出为
-3
2
-2
……
……
……
解决方案 »
- 语句执行时不使用索引的原因
- oracle存储过程,输出参数为数组的问题?紧急求助!寝室疯了。。
- 在存储过程内部定义的变量,如何将它的值传给sql语句?
- ORACLE怎么样复制数据库下的所有表的结构呢,不要数据?
- 更改主机名出现的问题?
- ORALCE中列的数据类型可以是嵌套表吗?如果是的话,那岂不是违背了数据库设计第一范式(即表属性不可再分性)?
- 急!!在线等
- Oracle 816 表空间问题! ORCL使用User表空间,在SQL plus中不能创建新表!提示空间不够!
- 如何在基于90列,20多万条的表上建立视图?我的查询关联到该表,10分钟没有结束!!!!
- oralce dorp用户怎恢复这个用户表的数据
- oracle表空间无法扩展
- 有关oracle报表问题
select b-lead(c) over(order by a) from temp
我是新手 请问Temp 是什么?
with tb as(
select 2001 a,1 b,2 c from dual union all
select 2002, 8, 4 from dual union all
select 2003, 6, 6 from dual union all
select 2004, 9, 8 from dual)
select a,b,c,lead(c) over(order by a),b-lead(c) over(order by a)
from tb A B C LEAD(C)OVER(ORDERBYA) B-LEAD(C)OVER(ORDERBYA)
-------- ---------- ---------- --------------------- -----------------------
2001 1 2 4 -3
2002 8 4 6 2
2003 6 6 8 -2
2004 9 8
with tb as(
select 2001 a,1 b,2 c from dual union all
select 2002, 8, 4 from dual union all
select 2003, 6, 6 from dual union all
select 2004, 9, 8 from dual)
--这些是提供数据的语句 相当于临时表
cool!~~ 此外发现此人很喜欢用with as的写法哈~
from tb
select b-lead(c,1) over(order by a) from table