Oracle 查询(SELECT)语句

Posted Abeam

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 查询(SELECT)语句相关的知识,希望对你有一定的参考价值。

Ø  简介

在前面的 Oracle 查询 SELECT 语句(一) 中介绍了 SELECT 常用的一些基本查询语法,接下来再来看 SELECT 更深入的一些查询功能和技巧,包括以下内容:

1.   All Any 运算符

2.   集合操作符(UNIONUNION ALLINTERSECTMINUS)

3.   WITH AS 的用法

4.   CONNECT BY 子句的使用

5.   使用 CROSS APPLY OUTER APPLY 连接查询(需要 12c 或以上版本)

6.   使用 WM_CONCAT() LISTAGG() 函数合并多行字段输出

 

1.   All Any 运算符

1)   All 运算符,表示满足给出列表中的所有值。通常用于以下场景:

1.   查出大于30号部门所有员工最高工资的员工姓名、工资

--使用ALL

SELECT ename, sal FROM emp WHERE sal > ALL(SELECT sal FROM emp WHERE deptno = 30);

--使用MAX

SELECT ename, sal FROM emp WHERE sal > (SELECT MAX(sal) FROM emp WHERE deptno = 30);

 

2)   Any 运算符,表示满足给出列表中的任意值。通常用于以下场景:

1.   查出大于30号部门任意员工的工资的员工姓名、工资

--使用ALL

SELECT ename, sal FROM emp WHERE sal > ANY(SELECT sal FROM emp WHERE deptno = 30);

--使用MIN

SELECT ename, sal FROM emp WHERE sal > (SELECT MIN(sal) FROM emp WHERE deptno = 30);

 

n  提示

通过以上示例,可以看到通常情况下,ALL ANY 都可以使用 MAX MIN 去取代,所以这两个运算符一般情况用的不多。分析如下:

比较运算符

All

Any

Max

Min

> 大于

取最大值

取最小值

取最大值

取最小值

< 小于

取最小值

取最小值

取最大值

取最小值

 

2.   集合操作符(UNIONUNION ALLINTERSECTMINUS)

Oracle 中对多个集合操作,主要使用 UNIONUNION ALLINTERSECTMINUS 这四个操作符来完成,解决取多个集合的并集交集差集

1)   UNIONUNION ALL

UNION UNION ALL 用于取两个结果集的并集,举例说明:

Ø  UNION,取出并集并去除重复行,例如:

SELECT * FROM emp WHERE empno Oracle中分页查询语句

Oracle的单表查询语句

oracle PLSQL 查询语句select t.*, t.rowid from PU.YK t

Oracle数据库2--Select查询语句

oracle查询语句 select a','b','c from table where a in('m','n')

Oracle中分页查询语句

(c)2006-2024 SYSTEM All Rights Reserved IT常识