oracle学习65-oracle之数据处理之视图练习

62. 查询员工表中 salary 前 10 的员工信息.
 
select last_name, salary
from (select last_name, salary from employees order by salary desc)
where rownum <= 10
	
	说明: rownum "伪列" ---- 数据表本身并没有这样的列, 是 oracle 数据库为每个数据表 "加上的"  列. 
	可以标识行号.默认情况下 rownum 按主索引来排序. 若没有主索引则自然排序.
	 
注意: **对 ROWNUM 只能使用 < 或 <=, 而是用 =, >, >= 都将不能返回任何数据.   
 
63. 查询员工表中 salary 10 - 20 的员工信息.    
 
select *
from(
  select rownum rn, temp.*
  from (
    select last_name, salary
    from employees e
    order by salary desc
  ) temp
)
where rn > 10 and rn < 21
 
64. 对 oralce 数据库中记录进行分页: 每页显示 10 条记录, 查询第 5 页的数据 
 
select employee_id, last_name, salary
from (
        select rownum rn, employee_id, last_name, salary
        from employees
     ) e
where e.rn <= 50 and e.rn > 40   
 
注意: **对 oracle 分页必须使用 rownum "伪列"!
 
select employee_id, last_name, salary
from (
        select rownum rn, employee_id, last_name, salary
        from employees
     ) e
where e.rn <= pageNo * pageSize and e.rn > (pageNo - 1) * pageSize
/*************************************************************************************************/
1.	使用表employees创建视图employee_vu,其中包括姓名(LAST_NAME),员工号(EMPLOYEE_ID),部门号(DEPARTMENT_ID).
a)	create or replace view employee_vu
b)	as
c)	select last_name,employee_id,department_id
d)	from employees
 
2.	显示视图的结构
desc employee_vu;
	
3.	查询视图中的全部内容
SELECT * FROM employee_vu;
 
4.	将视图中的数据限定在部门号是80的范围内
a)	create or replace view employee_vu
b)	as
c)	select last_name,employee_id,department_id
d)	from employees
e)	where department_id = 80
 
5.	将视图改变成只读视图
 
create or replace view employee_vu
as
select last_name,employee_id,department_id
from employees
where department_id = 80
with read only

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值