orcal - 子查询
where
单行单列
SELECT AVG(sal) from emp;
SELECT * FROM EMP
WHERE sal <(SELECT AVG(sal) from emp);
单行多列
SELECT * FROM emp
where (job,sal) = (SELECT job,sal FROM emp WHERE ename = 'SCOTT') AND ename <> 'SCOTT';
多行单列
select * from emp where sal in(
SELECT sal FROM emp Where job = 'MANAGER'
);
not in 有空则无返回结果
ANY 和in一样
select * from emp where sal =ANY(
SELECT sal FROM emp Where job = 'MANAGER'
);
>ANY比子查询的最小值大
select * from emp where sal >ANY(
SELECT sal FROM emp Where job = 'MANAGER'
);
<ANY比子查询的最大值小 >ALL比子查询最大值大
select * from emp where sal >ALL(
SELECT sal FROM emp Where job = 'MANAGER'
); <ALL比子查询最小值小
select * from emp where sal <ALL(
SELECT sal FROM emp Where job = 'MANAGER'
);
having
在having中单行单列,统计运算:
SELECT AVG(sal) FROM emp; SELECT job,count(ename),AVG(SAL) FROM emp
Group by job
having AVG(SAL)>(SELECT AVG(sal) FROM emp)
select
子查询在select中
SELECT e.ename,e.empno,e.job
,(select d.dname from dept d where d.deptno=e.deptno) dname
from emp e;
from
FROM
SELECT d.dname,d.loc,temp.count
FROM dept d,(SELECT deptno,count(empno) count FROM emp
Group by deptno) temp where d.deptno = temp.deptno(+);
orcal - 子查询的更多相关文章
- 数据库之 MySQL --- 数据处理 之 子查询 (二)
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一 .数据库语言定义及命令行查看数据库操作 -- SQL 语言可以分为三类-- DML: 数据操纵语言. ...
- 深入理解MySql子查询IN的执行和优化
IN为什么慢? 在应用程序中使用子查询后,SQL语句的查询性能变得非常糟糕.例如: SELECT driver_id FROM driver where driver_id in (SELECT dr ...
- Mysql - 性能优化之子查询
记得在做项目的时候, 听到过一句话, 尽量不要使用子查询, 那么这一篇就来看一下, 这句话是否是正确的. 那在这之前, 需要介绍一些概念性东西和mysql对语句的大致处理. 当Mysql Server ...
- 在SQL Server中为什么不建议使用Not In子查询
在SQL Server中,子查询可以分为相关子查询和无关子查询,对于无关子查询来说,Not In子句比较常见,但Not In潜在会带来下面两种问题: 结果不准确 查询性能低下 下面 ...
- 读书笔记--SQL必知必会11--使用子查询
11.1 子查询 查询(query),任何SQL语句都是查询.但此术语一般指SELECT语句. SQL还允许创建子查询(subquery),即嵌套在其他查询中的查询. 作为子查询的SELECT语句只能 ...
- 你真的会玩SQL吗?无处不在的子查询
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等)
Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等) 子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 = from c i ...
- 当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式。
当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式.比如 select * from T_Employee where FNumber not in ( select top 5* ...
- Oracle学习笔记五 SQL命令(三):Group by、排序、连接查询、子查询、分页
GROUP BY和HAVING子句 GROUP BY子句 用于将信息划分为更小的组每一组行返回针对该组的单个结果 --统计每个部门的人数: Select count(*) from emp group ...
随机推荐
- bootstrap4.0
1.CDN库引用: <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4 ...
- git 取消文件跟踪
1.共享式忽略 git库路径下的.gitignore文件 2.独享式忽略 git库路径下的.git/info/exclude ,第一次需要自己创建exclude文件 然后将要忽略的文件名加到上面的 ...
- VS 2017 + opencv4.0
完全参考这一文章, 非常详细: https://blog.csdn.net/qq_41175905/article/details/80560429 记录自己遇到的问题: 1. VS 2017 专业版 ...
- C++ 中用cin方式获取输入的几种常用方式
一.前言 在C++程序的编写过程中,可能会经常用到cin方式用来捕获输入设备的输入信息.细分的话,主要的方式有:cin>>.cin.get.cin.getline.在借助键盘等字符输入设备 ...
- 谈lisp
The Lisp Curse /Lisp魔咒 http://winestockwebdesign.com/Essays/Lisp_Curse.html 英文出处 http://www.soimort. ...
- 3、Linux连接oracle
su - oracle //登录sqlplus sqlplus /nolog //连接orcale conn xx/xx;(用户名/密码) 或者 connect /as sysdba;
- LOJ 2551 「JSOI2018」列队——主席树+二分
题目:https://loj.ac/problem/2551 答案是排序后依次走到 K ~ K+r-l . 想维护一个区间排序后的结果,使得可以在上面二分.求和:二分可以知道贡献是正还是负. 于是想用 ...
- Spring Boot引入Oracle Jar
Oracle数据库的驱动依赖,maven仓库并不提供,需要手动添加 1. 下载jar文件 如ojdbc7.jar文件 将该文件放在D:\oracle\ojdbc7.jar路径下 2.然后在命令行输入 ...
- [转]vnpy乱乱谈 02架构
vnpy乱乱谈 02架构 转自:http://101.132.65.227/?p=51 听到架构这个词先不要害怕. 其实这部分内容还是挺简单的. 一般而言, 一个交易系统我们可以简单的分成输入, (系 ...
- Oauth2手册 第一章
来源:https://github.com/jeansfish/RFC6749.zh-cn/blob/master/SUMMARY.md 1. 简介在传统的客户端-服务器身份验证模式中,客户端请求服务 ...