oracle 账号被锁查询union与union all的区别以及join的用法

union与union all的区别以及join的用法

 

1、union与union all的区别 

  www.2cto.com  

Union,对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序; 

Union All,对两个结果集进行并集操作,包括重复行,不进行排序; 

可以在最后一个结果集中指定Order by子句改变排序方式。 

 

2、join的用法小结

 

   2.1、外连接 (左向外联接、右向外联接或完整外部联接) 

   2.1.1左连接:left join 或 left outer join 

左向外联接的结果集包括 LEFT OUTER 子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值(null)。 

   2.1.2右连接:right join 或 right outer join 

右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。 

   2.1.3完整外部联接:full join 或 full outer join 

完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。 

  www.2cto.com  

   2.2内连接:join 或 inner join 

只返回符合条件的table1和table2的列 

(select * from table1 join table2 on table1.id=table2.id 

等价select a.*,b.* from table1 a,table2 b where a.id=b.id) 

 

  2.oracle账号3 交叉连接(完全) 

 

笛卡尔积=m*n 
 

此条目发表在oracle metalink账号分类目录,贴了标签。将固定链接加入收藏夹。