select * from table where id exist ('id+1','id-1')
select r,e.* from (select rownum r,last_name,salary from ( select last_name,salary from employees order by nvl(salary,0) desc)) e where r between 6 and 8;
SELECT * FROM table WHERE id<:id AND ROWNUM=1 ORDER BY id DESCSELECT * FROM table WHERE id>:id AND ROWNUM=1 ORDER BY id
select lag(id,1) over(order by id) "id-1", id, lead(id,1) over(order by id) "id+1" from tab
select nex.id, nex.nextid,pri.priorid from ( select t1.id id, lead(t1.id,1) over(order by t1.id) nextid from item t1) nex, ( select t2.id id, lag(t2.id,1) over(order by t2.id) priorid from item t2) pri, where nex.id = pri.id and nex.id = 所需ID
select last_name,salary from employees order by nvl(salary,0) desc)) e
where r between 6 and 8;
WHERE id<:id
AND ROWNUM=1
ORDER BY id DESCSELECT * FROM table
WHERE id>:id
AND ROWNUM=1
ORDER BY id
select lag(id,1) over(order by id) "id-1",
id,
lead(id,1) over(order by id) "id+1"
from tab
nex.id, nex.nextid,pri.priorid
from
(
select
t1.id id,
lead(t1.id,1) over(order by t1.id) nextid
from
item t1) nex,
(
select
t2.id id,
lag(t2.id,1) over(order by t2.id) priorid
from
item t2) pri,
where
nex.id = pri.id
and nex.id = 所需ID