查询思路
来源:互联网 发布:小天才早教机软件下载 编辑:程序博客网 时间:2024/04/30 08:51
2.1 示例
[题目] 从 scott 用户的 emp/dept 表中,找到“来自芝加哥最有钱的那个人”。
首先,我们需要理清思路。
这里总共有两个条件:
- 这个人来自芝加哥
- 这个人是最有钱的,而且是芝加哥最有钱的
我们可以看出,第二个条件是依赖第一个条件的。
所以,分两步查询:
- 找出所有来自芝加哥的人
- 从这些人中,找到最有钱的那个。这一步,可以通过 max 函数或者 order by 方式实现。
下面是语句示例:
---- 第一步:找到来自芝加哥的所有人。下面两种写法等价:select e.* from emp e join dept d on (e.deptno=d.deptno) where d.loc='CHICAGO';select e.* from emp e, dept d where d.deptno = e.deptno and d.loc='CHICAGO';---- 第二步,基于上面结果,筛选出最有钱的那个-- 可以通过 max 函数select e.* from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO' and sal = (select max(sal) from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO');-- 可以通过 order by 方式select ename from (select e.*, d.* from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO' order by sal desc)where rownum = 1;
注意,实现的方式,不止上面的那些。但总体 思路 是一样的。
所以,思路永远是最重要的。
2.1 示例
[题目] 从 scott 用户的 emp/dept 表中,找到“来自芝加哥最有钱的那个人”。
首先,我们需要理清思路。
这里总共有两个条件:
- 这个人来自芝加哥
- 这个人是最有钱的,而且是芝加哥最有钱的
我们可以看出,第二个条件是依赖第一个条件的。
所以,分两步查询:
- 找出所有来自芝加哥的人
- 从这些人中,找到最有钱的那个。这一步,可以通过 max 函数或者 order by 方式实现。
下面是语句示例:
---- 第一步:找到来自芝加哥的所有人。下面两种写法等价:select e.* from emp e join dept d on (e.deptno=d.deptno) where d.loc='CHICAGO';select e.* from emp e, dept d where d.deptno = e.deptno and d.loc='CHICAGO';---- 第二步,基于上面结果,筛选出最有钱的那个-- 可以通过 max 函数select e.* from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO' and sal = (select max(sal) from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO');-- 可以通过 order by 方式select ename from (select e.*, d.* from emp e, dept d where e.deptno = d.deptno and d.loc='CHICAGO' order by sal desc)where rownum = 1;
注意,实现的方式,不止上面的那些。但总体 思路 是一样的。
所以,思路永远是最重要的。
阅读全文
1 0
- 查询思路
- sql查询思路php
- hbase分页查询思路
- SQL查询的分页思路
- SQL查询的分页思路
- 查询优化管道分析思路
- getHibernateTemplate 分页查询的思路
- MySql分页查询优化思路
- 【思路】表单控件和查询控件,整理一下思路。
- 实现编号查询的另类思路
- MySQL 查询中的分页思路的优化
- 提高数据库查询速度的几个思路
- 关于词典查询的一点思路
- 工作总结12 快速分析查询实现思路
- 大数据灵活查询的一个思路
- 线段树查询操作思路代码
- ip查询地址接口架构思路记录
- 提高数据库查询速度的几个思路
- 正确阅读java-web代码的方式
- How far away ? HDU
- Yale-cmu-berkeley & BigBIRD
- 破解iar for arm 7.2.2
- nedtworking
- 查询思路
- HDU-3595 GG and MM
- HDU 1704 Rank floyd求传递闭包 || bfs
- idea 注册码和汉化包
- js中阻止默认事件
- 查看点a文件
- Firefox/Chrome/IE Ajax 怎样设置允许跨域请求
- mongodb常用操作
- 昆石VOS3000_2.1.2.0一键安装教程