数据库中的分页查询rownum的使用

数据库中的分页查询

一.rownum:

1.对数据库中查到的数据逻辑上重新编辑,每次查到的数据rownum不同。
2.不能使用between rownum between 2 and 4//不合法
3.只能使用<=关系,不能使用>关系
案例:
–查找出部门 2 和部门 4 中,工资最高第 2名到工资第 3 名的员工的员工名字,部门名字,部门位置
select rownum,salary,d.*
from departments d ,
(select salary, rownum no, department_id from(
select salary,department_id
from employees
where department_id between 2 and 4
order by salary
)
where rownum<=3)t
where d.dapartment_id=t.department_id and t.no>1

2.rowid

物理上的id,不变的,唯一的id

3.简单的多表查询

1.–得到每个月工资总数最少的那个部门的部门编号,部门名称,部门位置
–技巧:求分组函数中最少的,用rownum()函数
select d.*
from departments d,
(select e.department_id id from
(select sum(salary) sal,department_id
from employees
group by department_id
order by sum(salary)) e

where rownum=1) t

where d.dapartment_id=t.id
这里写图片描述
2.–查找出收入(工资加上奖金),下级比自己上级还高的员工编号,员工名字,员工收入
select e.*
from employees e,(
select salary,manager,dapartment_id
from employees e,departments d
where e.first_name=d.manager and e.department_id=d.dapartment_id//多表查询必须名字和id一样
)t
where e.salary>t.salary and e.department_id=t.dapartment_id
这里写图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值