数据库学习6.0(sql99语法)


1)sql99语法:

select 查询列表

from表1 别名 [连接类型]

join
表2 别名

on 连接条件

[where 筛选条件]

[group by 分组]

[having 筛选条件]

[order by排序列表]

2)分类(链接类型的分类)

内连接::inner

外连接:左外:left [outer]

右外:right [outer]

全外:full
[outer]

交叉连接:cross

其实sq92语法与sql99 语法差不多,只是 多了inner join on关键字

外连接:应用场景 用于查询一个表中有,而另一个表中没有的记录

特点:

1)外连接的查询结果为主表中的所有记录

如果从表中有和他匹配的,则显示匹配的值

如果从表中没有和他匹配的则显示null

外连接查询结果=内连接结果+主表中有而从表中没有的记录

2)左外连接:left join左边的是主表

右外连接,right join右边的是主表

3)左外和右外交换两个表的顺序,可以实现同样的效果.

4)全外连接=内连接的结果+表一中有但是表二中没有的+表二中有表一中没有的.(sql语句中不支持全外连接)

5)交叉连接:就是sq99中的笛卡尔乘积

语法:表A across join 表B;

小总结

sql99与sql92

功能:sql99支持的较多

可读性:sql99实现连接条件和帅选条件的分离,可读性较高.

其他查询方式如下图:(图片和笔记均来自尚硅谷)
数据库学习6.0(sql99语法)_第1张图片
数据库学习6.0(sql99语法)_第2张图片

你可能感兴趣的:(笔记)