zoukankan      html  css  js  c++  java
  • 数据库表连接总结

    答:左外连接

    表的联结、运算符学习笔记
    1.等值联结
    两个表的相同列的值必须相等。
    等值联结也称为 简单联结 或 内联结
    2.非等值联结
    非等值联结是包含非等号运算符的联结条件
    3.外联结
    通过外联结返回不直接匹配的记录。
    外联结运算符只能出现在表达式的一侧,即缺少信息的那一侧。他将从一个表中返回在另一个表中没有直接匹配的行。
    包含外联结的条件不能用IN 运算符,也不能通过OR运算符链接到另一个条件。
    4.自联结
    自己联结自己的一种联结形式
    5.交叉联结:
    返回两个表的交叉乘积 这与两个表之间的笛卡尔乘积是相同的 CROSS JOIN
    6.自然联结:
    NATURAL JOIN 子句是以两个表中具有相同名称的所有列为基础。
    它选择两个表中那些在所有匹配的列中值相等的行。
    如果列具有相同的名称 但是数据类型不同,就会返回一个错误。
    7.USING子句
    如果几个列具有相同的名称,但是数据类型不匹配,则可以使用USING 子句来修改NATURAL JOIN子句 以指定要用于等值联结的列。
    在多个列匹配时,使用USING子句只匹配一个列。
    在引用列中不要使用表名或别名
    对于使用Using限制只用一个相同列来关联的,where条件当中出现的相同的列则必须限定为某一个表的列 否则因产生歧义而抛出错误
    8.使用ON子句创建联结
    自然联结的联结条件基本上是具有相同名称的所有列的等值联结。
    要制定任意条件或指定要联结的列,可以使用ON子句。
    联结条件与其他搜索条件分开。
    9 INNER 与 OUTER 联结
    在SQL:99标准中,只返回匹配行的两个表之间的联结叫做:内联结。
    两个表之间的联结不但返回内联结结果而且返回左(或右)表不匹配行的结果。
    两个表之间的联结不但返回内联结结果而且返回左联结和右联结不相匹配的结果,这样的联结就是完全外联结
    关于左/右外联结的理解:
    由于左右两个表完全匹配的情况称为 内联结,那么左外联结则可以理解为除了匹配的结果外,还将列出左表匹配以外的记录。
    右外联结则是除了显示两表匹配的结果,还将显示右表除匹配结果以外的记录。

    http://blog.csdn.net/mishifangxiangdefeng/article/details/7882340

    个人学习笔记,欢迎拍砖!---by hellogiser

    Author: hellogiser
    Warning: 本文版权归作者和博客园共有,欢迎转载,但请保留此段声明,且在文章页面明显位置给出原文连接。Thanks!
    Me: 如果觉得本文对你有帮助的话,那么【推荐】给大家吧,希望今后能够为大家带来更好的技术文章!敬请【关注】
  • 相关阅读:
    深(爆)搜专题整理
    牛客CSP-S提高组赛前集训营1 T2:乃爱与城市拥挤程度
    [BZOJ3743][Coci2015]Kamp 题解
    CSP2019-S,J初赛游记
    指针复习
    二叉树复习
    最短路复习
    数据库关联查询与模型之间的关联
    数据库操作Flask-SQLAlchemy之模型声明及数据库表的生成与删除
    csrf攻击防范
  • 原文地址:https://www.cnblogs.com/hellogiser/p/table-join.html
Copyright © 2011-2022 走看看