sql联合查询语句总结

首先假设有两个表,表A和表B

A表中包含(id name sex phone )

B表中包含(ID name adress phone)

内敛查询:内敛查询的作用是只允许生成可以同时匹配的的表A和表B的集合,然后交叉形成的的公共部分,注意他们只有一小部分是重合的;

例句: select *from TableA inner join TableB  on  TableA.Name=TableB.Name 

存在内敛查询就一定存在外联查询;

外联查询:外链查询是生成表A和表B的记录的全集;它包括了两边都匹配的记录,如果有一边没有匹配,那么这一边就会生成null字段,如果两边都匹配了,则不会生成null字段。

例句: Select * from TableA  Full Outer Join TableB on  on  TableA.Name=TableB.Name ;

外联合又被分为 左外联合和右外联合;

左外联合(Left Join):外联和主要是生成左边的也就是表a的所有记录,但是也包括表b在表a里面的部分,如果没有匹配成功,则右边显示为null;

简单来说就是以左边数据为主;

例句: select * from TableA  Left Outer Join TableB  ON TableA.name= TableB.name; (where 条件)

右外联合(right join) 外联和主要是生成右边的也就是表b的所有记录,但是也包括表a在表b里面的部分,如果没有匹配成功,则左边显示为null;简单来说是以右边数据为主;

例句:select * from TableA  right Outer Join TableB  ON TableA.name= TableB.name; (where 条件)

 

UNION语句用法:

在开发中,有些数据的存储可能涉及到分库分表,查询的时候,可能需要查询所有的分表,这个时候,就需要用到UNION或者UNION ALL,下面介绍一下UNION的用法以及与UNION ALL的区别:

UNION操作符用于合并两个或多个SELECT语句的结果集,这里需要注意的是:UNION内部的SELECT语句必须拥有相同数量的

列,列也必须拥有相似的数据类型,同时,每条SELECT语句中列的顺序必须相同。

例句:  SELECT NAME FROM TABLEA

             UNION

             SELECT NAME FROM TABLEB

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值