oracle学习笔记第二天
一、连接查询
--笛卡尔积(表 * 表),连接的基础
select * from emp,dept;
--等值连接
select * from emp e,dept d where e.deptno = d.deptno;
--非等值连接
--eg:查询员工的薪水等级
select * from salgrade;
select e.ename,s.grade from emp e,salgrade s where
e.sal between s.losal and s.hisal;
--自连接 表自己连接自己,用两个别名区分
--eg:查询员工的上司的姓名:以“xxx的上司是xxx”方式显示
select e1.ename || '的上司是:' || e2.ename from emp e1,emp e2
where e1.mgr = e2.empno;
select * from emp;
--外连接
--eg:查询所有员工的部门名称,没有部门的也显示姓名
select e.ename,e.deptno from emp e,dept d
where e.deptno = d.deptno(+);
insert into emp (empno ,ename) values(40,'hsd%sshf')
select * from emp;
--sql 1999的链接类型
---cross join类型
select * from emp e cross join dept d;
---natural join
select * from emp e natural join dept d;
----inner join
--eg:查询员工的薪水等级
select * from salgrade;
select * from emp e inner join salgrade s on e.sal
between s.losal and s.hisal
--eg:查询员工的上司的姓名:以“xxx的上司是xxx”方式显示
select e1.empno || '的上司是:' || e2.empno from emp e1 inner join emp e2
on e1.mgr = e2.empno;
---外连接 left outer join
--eg:查询所有员工的部门名称,没有部门的也显示姓名
select * from emp e left outer join dept d on e.deptno = d.deptno;
--- right outer join
select * from dept d right outer join emp e on e.deptno = d.deptno;
---full outer join
select * from dept d full outer join emp e on e.deptno = d.deptno;
--多表查询
select 列名 from 表1 join 表2 on (表1,2连接条件)
join 表3 on(表1,3连接条件)或(表2,3连接条件)
--eg:查询员工的姓名、薪水、部门名称及工资等级
select e.ename,e.sal,d.dname,s.grade from emp e,dept d,salgrade s
where e.deptno = d.deptno and
e.sal between s.losal and s.hisal;
select e.ename,e.sal,d.dname,s.grade from salgrade s join emp e
on e.sal between s.losal and s.hisal join dept d
on e.deptno = d.deptno;
select e.ename, e.sal, d.dname, s.grade
from emp e
join dept d
on e.deptno = d.deptno
join salgrade s
on e.sal between s.losal and s.hisal;
select e.ename, e.sal, d.dname, s.grade
from emp e
join dept d
on e.deptno = d.deptno
join salgrade s
on e.sal between s.losal and s.hisal;
二、子查询
在from后加
在where后加
oracle学习笔记第二天的更多相关文章
- oracle学习笔记第一天
oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字 1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...
- Oracle学习笔记三 SQL命令
SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)
- 《DOM Scripting》学习笔记-——第二章 js语法
<Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...
- Oracle学习笔记——点滴汇总
Oracle学习笔记——点滴汇总 http://www.botangdb.com/ Oracle GI = Grid Infrastructure = ASM + Cluster
- Oracle学习笔记之四sp1,Oracle 11g的常用函数
从Oracle学习笔记之四,SQL语言入门中摘出来的,独立成一章节 3.1 字符类函数 ASCII(c)和CHR(i) 分别用于返回一个字符的ASCII码和返回给定ASCII值所对应的字符. C ...
- Oracle学习笔记之四,SQL语言入门
1. SQL语言概述 1.1 SQL语言特点 集合性,SQL可以的高层的数据结构上进行工作,工作时不是单条地处理记录,而对数据进行成组的处理. 统一性,操作任务主要包括:查询数据:插入.修改和删除数据 ...
- The Road to learn React书籍学习笔记(第二章)
The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...
- Oracle学习笔记—数据字典和常用命令(转载)
转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...
- [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”
[HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...
随机推荐
- 第一周——数据分析之表示 —— Numpy入门
数据的维度 从一个数据到一组数据 一个数据:表达一个含义 一组数据:表达一个或者多个含义 维度:一组数据的组织形式 一维数据 由对等关系的有序或者无序数据构成,采用线性方式组织,对应列表.数组和集合等 ...
- Lua中的闭包
[什么是闭包?] 闭包在Lua中是一个非常重要的概念,闭包是由函数和与其相关的引用环境组合而成的实体.我们再来看一段代码: function newCounter() return function ...
- gcc 8.2.1 / MCF thread 简介
gcc 8.2.1 下载 地址 https://gcc-mcf.lhmouse.com/ MCF threadhttps://github.lhmouse.com/ MCF thread 简介MCF ...
- java入门需了解的历史
1991年,Sun公司的Green项目,Oak 1995年,推出Java测试版 1996年,JDK1.0 1997年,JDK1.1 1998年,JDK1.2,大大改进了早期版本的缺陷,是一个革命性的版 ...
- linux 查看java的安装路径
在linux下,如何找java的安装路径 han@ubuntu:/etc$ whereis java java: /usr/bin/java /usr/share/java /usr/lib/jvm/ ...
- Expression Trees 参数简化查询
ASP.NET MVC 引入了 ModelBinder 技术,让我们可以在 Action 中以强类型参数的形式接收 Request 中的数据,极大的方便了我们的编程,提高了生产力.在查询 Action ...
- VMware虚拟机下安装ubuntu操作系统
安装tools:
- CSS文字溢出处理问题
单行省略 div { white-space:nowrap; //断行处理:无断行 text-overflow:ellipsis; //文字溢出处理:省略号 overflow:hidden; //溢出 ...
- js 对时间进行判断 现在的时间是否在后台给的开始时间 和 结束时间 内 (时间格式为:2018-09-03 09:20:30)
function status(item){ let now = Date.parse(new Date()); let startString = Date.parse(new Date(Date. ...
- Hadoop错误之namenode宕机的数据恢复
情景再现: 在修复hadoop集群某一个datanode无法启动的问题时,搜到有一个答案说要删除hdfs-site.xml中dfs.data.dir属性所配置的目录,再重新单独启动该datanode即 ...