zoukankan      html  css  js  c++  java
  • 左连接与右连接

    左连接与右连接

    多表查询即连接查询,通过外键去连接。

    内连接查询inner join: 只返回两个表中跟联结字段(外键)相等的记录;从左边的表往右边的表查找能匹配的记录,无匹配的记录行不显示。
    SQL语句:select 表名1.,表名2. from 表名1 inner join 表名2 on (表名1.列名=表名2.列名);

    外连接outer join
    left join(左联接): 以左表为基准,返回包括左表中的所有记录和右表中跟联结字段相等的记录,即包含所有的左边表中的所有记录,右边表中和它匹配的记录。左右两张表按某个列进行关联查找,左连接以左边的表为基础表,基础表的数据全部都查找出来,右边的表如果有和左边的表的条件相符的数据就查找出来,如果条件不相接符就用null显示。
    left outer join left join
    SQL语句:select 表名1.,表名2. from 表名1 left outer join 表名2 on (表名1.列名=表名2.列名);

    right join(右联接):以右表为基准,返回包括右表中的所有记录和左表中跟联结字段相等的记录,即包含所有的右边表中的所有记录,左边表中和它匹配的记录。
    right outer join right join
    select 表名1.,表名2. from 表名1 right outer join 表名2 on (表名1.列名=表名2.列名);

    示例:
    A表(a1,b1,c1) B表(a2,b2)
    a1 b1 c1 a2 b2
    数学 95 01 01 张三
    语文 90 02 02 李四
    英语 80 04 03 王五

    内连接:
    SQL语句: select a.,b. from a,b where a.c1=b.a2;
    执行结果如下图所示:

    SQL语句:select a.,b. from a inner join b on(a.c1=b.a2);
    执行结果如下图所示:

    左连接:
    SQL语句:select A.,B. from A left outer join B on(A.c1=B.a2);
    执行的结果如下图所示:

    右连接:select A.,B. from A right outer join B on(A.c1=B.a2);
    执行的结果如下图所示:

  • 相关阅读:
    ElasticSearch 清理索引
    Docker 服务接入SkyWalking
    Promethues mysql_exporter 集中式监控
    修改SVN密码自助平台
    快速排序(golang)
    ElasticSearch Xpack集群认证和elasticsearch-head配置
    Ansible一个tasks失败则终止剩余的task
    Consul安装
    最纯净的开发者技术交流社群
    Flutter中的报错:(IOS pod 版本错误) error: compiling for iOS 8.0, but module 'xxx' has a minimum deployment target of iOS 9.0
  • 原文地址:https://www.cnblogs.com/xianmin/p/14017000.html
Copyright © 2011-2022 走看看