内连接,外连接(左连接,右连接),交叉连接(全连接)详解

在sql 语法中从大类可分为3中连接方式

1 内连接  : inner join  其中 inner 可以省略不写

2 外连接,外连接又细分左连接(left join )和右连接(right join)  2部分

3 全连接

表1 如下所示  biaoa

表2 如下所示 biaob


内连接 : select * from  biaoa a join biaob b on a.id=b.id  结果如下


外连接之 左连接 left join : select  * from biaoa a left join biaob b on a.id=b.id 结果如下

根据结果可知 左连接是根据 左边的表作为基点查询的

外连接之 右连接 right join : select  * from biaoa right join biaob on a.id=b.id 结果如下

同理 根据结果可知 右连接是根据 右边的表作为基点查询的



全连接 select * from biaoa ,biaob  没有条件 返回结果如下

返回的结果数是biaoa 和biaob 的笛卡尔积


还有一个小的问题,on 和where 的区别 在于查询结果之前的过滤和 查询结果之后的过滤

你可能感兴趣的:(java)