mysql-sql99语法
2021-8-24 Mr Chang 数据库
语法
select 查询列表。from 表1 别名 【连接类型】 join 表2 别名 on 连接条件 where 筛选条件
分类:
内连接:inner
外连接 左外 left(outer) 右外right(outer)全外:full(outer)
交叉连接:cross
一内连接
语法:
select 查询列表 from 表1 别名 inner join 表2 别名 on 连接条件
分类:
等值连接
非等值连接
自连接
特点:
1⃣️添加排序,分组,筛选。
2⃣️inner可以省略
3⃣️筛选条件放在where条件后 连接条件放在on后面,提高分离性和阅读性
4⃣️inner join 连接和sql92等值连接语法类似实现效果一样
一)等值连接
二)非等值连接
查询员工的工资级别
SELECT emplpyees e JOIN job_garades g ON e.`salary` BETWEEN g.`lowest_sal` and g.`highest_sal`;
三)自连接
查询员工的名字,上级的名字
自己连接自己 给自己这个表设置两个别名
二)非等值连接
查询员工的工资级别
SELECT emplpyees e JOIN job_garades g ON e.`salary` BETWEEN g.`lowest_sal` and g.`highest_sal`;
三)自连接
查询员工的名字,上级的名字
自己连接自己 给自己这个表设置两个别名
二 外连接
应用场景:查询一个表中有,而另外一个表中没有的连接
特点:
1.外连接的查询结果为主表中的所有记录
2,如果从表中有和它匹配的,则显示匹配的值
3.如果从表中没有 则显示null
4.内连接结果+主表中有而从表中没有的记录
5 左外连接 left join 左边的是主表
6 右外连接 right join 右边的是主表
全外连接
交叉连接
使用的99语法里面的笛卡尔乘积 左表行数*右表行数
发表评论: