表:
-- Create table
create table DEPT
(
deptno NUMBER(3) not null,
dname VARCHAR2(10),
loc VARCHAR2(13),
bz VARCHAR2(200)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create/Recreate primary, unique and foreign key constraints
alter table DEPT
add primary key (DEPTNO)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
数据(BZ为空):
101 开发部 广州市
102 测试部 广州市
103 商务部 北京市
104 实施部 深圳市
要求:表dept,根据字段dname排序后,取第2—3条记录显示:
SQL:select * from (select d.*,rownum as rn from (select * from dept order by dname desc)d) where rn between 2 and 3
显示结果(BZ为空):
deptno dname loc bz rn
103 商务部 北京市 2
101 开发部 广州市 3
另解:当然也可以用minus去写这条sql,当其效率较低,所以这里省略