笛卡尔积:
有两个集合A,B,取这两个集合的所有组成情况
要完成多表查询,需要消除无用数据
多表查询的分类:
1.内连接查询
1.隐式内连接:使用where条件消除无用数据
2.显示内连接
语法:select 字段列表 from 表名1 (inner) join 表名2 on 加入的条件
2.外连接查询
1.左外连接
语法:select 字段列表 from 表名1 left join 表名2 on 加入的条件
查询的是左表所有数据以及其交集部分
2.右外链接
3.子查询
概念:查询中嵌套查询,称嵌套查询为子查询。
子查询不同情况:
1.子查询的结果是单行单列的:
子查询可以作为条件,使用运算符去判断
2.子查询的结果是多行单列的:
子查询可以作为条件,使用运算符in进行判断,作为集合判断
3.子查询的结果是多行多列的:
子查询可以作为一张虚拟表参与查询