文章目录
- 基本查询回顾
- 建表
- 插入数据
- 实例
- 多表查询
- 建表
- 插入数据
- 实例
- 自连接
- 建表
- 插入数据
- 实例
基本查询回顾
建表
插入数据
实例
查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J
按照部门号升序而雇员的工资降序排序
使用年薪进行降序排序
显示工资最高的员工的名字和工作岗位
显示工资高于平均工资的员工信息
显示每个部门的平均工资和最高工资
显示平均工资低于2000的部门号和它的平均工资
显示每种岗位的雇员总数,平均工资
多表查询
实际开发中往往数据来自不同的表,所以需要多表查询。
本节我们用一个简单的公司管理系统,有三张表EMP,DEPT,SALGRADE来演示如何进行多表查询。
其实我们只要emp表中的deptno = dept表中的deptno字段的记录
建表
插入数据
实例
显示部门号为10的部门名,员工名和工资
显示各个员工的姓名,工资,及工资级别
笛卡尔乘积是指在数学中,两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。 直观的说就是集合A {a1,a2,a3} 集合B {b1,b2},他们的 笛卡尔积 是 A*B = { (a1,b1), (a1,b2), (a2,b1), (a2,b2), (a3,b1), (a3,b2)}任意两个元素结合在一起。
演示:
自连接
自连接是指在同一张表连接查询
建表
插入数据
实例
显示员工FORD的上级领导的编号和姓名(mgr是员工领导的编号–empno)
使用的子查询:
使用多表查询(自查询)