--分页查询---begin
--sqlserver top
--mysql limit
--oracle rownum(伪列),oracle中伪列(rownum,rowid)

 --查询工资为前五的信息
SELECT ROWNUM,tmp.* FROM (SELECT * FROM emp WHERE SAL IS NOT NULL ORDER BY sal DESC) tmp;
--查询工资在第6条至第12条的信息
--方法一:
--1.查询在前12(包含第12条)的信息
SELECT sal FROM (SELECT * FROM emp WHERE SAL IS NOT NULL ORDER BY sal DESC) WHERE ROWNUM <=12;
--2.查询在前6(包含第六条)的信息
SELECT sal FROM (SELECT * FROM emp WHERE SAL IS NOT NULL ORDER BY sal DESC) WHERE ROWNUM <=5;
--3.
SELECT ROWNUM, tmp.*
FROM (SELECT * FROM emp WHERE sal IS NOT NULL ORDER BY sal DESC) tmp
WHERE sal IN
(SELECT sal
FROM (SELECT * FROM emp WHERE sal IS NOT NULL ORDER BY sal DESC)
WHERE rownum <= 12)
AND sal NOT IN
(SELECT sal
FROM (SELECT * FROM emp WHERE sal IS NOT NULL ORDER BY sal DESC)
WHERE rownum <= 5);
--方法二:嵌套子查询
SELECT tem.*
FROM (SELECT rownum r, tmp.*
FROM (SELECT * FROM emp WHERE sal IS NOT NULL ORDER BY sal DESC) tmp) tem
WHERE tem.r BETWEEN 6 AND 12;
 --查询工资最高的第6条到第12条的员工信息
--1.
SELECT *
FROM (SELECT rownum row_top ,tt.*
FROM (SELECT e.*
FROM employees e
WHERE e.salary IS NOT NULL
ORDER BY salary DESC) tt)
WHERE row_top BETWEEN 6 AND 12;
--2. 效率较于1
SELECT *
FROM (SELECT rownum row_top, tt.*
FROM (SELECT rownum rn, e.*
FROM employees e
WHERE e.salary IS NOT NULL
ORDER BY salary DESC) tt)
WHERE row_top <= 12
AND row_top >= 6;
--3.效率较于2---推荐使用
SELECT *
FROM (SELECT rownum rn, tt.*
FROM (SELECT *
FROM employees e
WHERE e.salary IS NOT NULL
ORDER BY salary DESC) tt
WHERE rownum <= 12)
WHERE rn >= 6
 --视图
--查询全部的20号 部门的雇员信息(雇员编号,姓名,工作,雇佣日期)
CREATE OR REPLACE VIEW view20 AS SELECT empno, ename, job, hiredate FROM emp WHERE deptno = 20;
--创建视图v_dept:查询每个部门的编号,名称,员工人数,员工工资总和
CREATE OR REPLACE VIEW v_dept AS
SELECT e.deptno,d.dname,COUNT(e.empno) c, SUM(e.sal) s
FROM emp e
FULL JOIN dept d
ON e.deptno = d.deptno
GROUP BY e.deptno,d.dname; SELECT * FROM v_dept WHERE c >= 3;
SELECT Count(*) from emp;

Orcle基本语句(五)的更多相关文章

  1. {MySQL的逻辑查询语句的执行顺序}一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析

    MySQL的逻辑查询语句的执行顺序 阅读目录 一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析 一 SEL ...

  2. Orcle 查询语句

    首先,以超级管理员的身份登录oracle       sqlplus sys/bjsxt as sysdba   --然后,解除对scott用户的锁       alter user scott ac ...

  3. Orcle基本语句(六)

    -- Created on 2017/1/5 by ADMINISTRATOR DECLARE -- Local variables here i ; v_name ) := '张晓风'; v_age ...

  4. ORCLE基本语句(二)

    select语句的基本语法: [ORDER BY < COLUMN1, COLUMN2, COLUMN3...> [ASC 或 DESC]]

  5. Orcle基本语句(三)

    COMMIT; --查询表内所有内容 SELECT * FROM stu_info; --查询部分列,并赋予别名 SELECT stu_id 学生标号,stu_name 学生姓名 FROM stu_i ...

  6. Orcle常用语句

    在SQLPlus界面的操作语句: 查看\设置每行内显示的字符数:show\set linesize [linesize] 查看\设置一次显示的行数:show\set pagesize [pagesiz ...

  7. Orcle基本语句(一)

    --创建学生信息表,约束放在所有列定义之后 CREATE TABLE stu_info( stu_id INTEGER, stu_name NVARCHAR2() NOT NULL, stu_sex ...

  8. 数据库 数据库SQL语句五

    集合运算 union 并集(两个集合如果有重复部分,那么只显示一次重复部分) union all 并集(两个集合如果有重复部分,那么重复部分显示两次) intersect 交集 minus 差集 -- ...

  9. Orcle基本语句(四)

    --显示员工的编号,姓名,工资,工资级别,所在部门的名称;(使用emp表) SELECT * FROM emp; SELECT * FROM salgrade; SELECT * FROM dept; ...

随机推荐

  1. StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks 论文笔记

    StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks  本文将利 ...

  2. [Linux] -Docker修改空间大小

    Docker默认空间大小分为两个,一个是池空间大小,另一个是容器空间大小. 池空间大小默认为:100G 容器空间大小默认为是:10G 所以修改空间大小也分为两个: 这里使用centos下的yum进行安 ...

  3. MaskEdit 使用方法

    它有一个  MaskEdit 属性(注意,属性) 打开后有一个   Input Mask 编辑框 格式符意义 L 允许输入英文字母,且一定要输入                      l 允许输入 ...

  4. 关于QFTP乱码

    // 从FTP接收的内容QString FtpUtil::_FromSpecialEncoding(const QString &InputStr){ #ifdef Q_OS_WIN retu ...

  5. mybatis实战教程(mybatis in action)之十:mybatis SqlSessionSupport 的使用,构件DAO 层的应用

    前面的系列mybatis 文章,已经基本讲到了mybatis的操作,但都是基于mapper隐射操作的,在mybatis 3中这个mapper 接口貌似充当了以前在ibatis 2中的 DAO 层的作用 ...

  6. 双系统 fedora 恢复引导

    因为硬盘坏了,所以买了个固态的用用. 先装windows,再装fedora及常用必备的驱动软件装上. 快要完成了心情都挺好,可是在一次关机时window7关机很慢一直在删索引,我嫌时间太长,直接按电源 ...

  7. AJAX怎么用POST 传参数

    //注册回调函数.注意注册回调函数是不能加括号,加了会把函数的值返回给onreadystatechange xmlhttp.onreadystatechange = callback; //设置连接信 ...

  8. 初版storm项目全流程自动化测试代码实现

    由于项目需要,写了版针对业务的自动化测试代码,主要应用场景在于由于业务日趋复杂,一些公共代码的改动,担心会影响已有业务.还没进行重写,但知识点还是不少的与大家分享实践下.首先,介绍下整个流处理的业务流 ...

  9. bug__android studio 出现布局文件不提示,且点击代码不能跟踪代码

    1,点击布局文件,出现  Cannot find declaration to  go to ? 且 点击代码不能跟踪代码? 把 项目的build.gradle 中的  compileSdkVersi ...

  10. WinRAR压缩操作帮助类

    //------------------------------------------------------------------------------------- // All Right ...