zoukankan      html  css  js  c++  java
  • 关于数据库的左,右,内,外连接,Union和Union all---------笔记

    1.左连接

    select a.filed1,a.filed2,b.filed1
    
    from a (左表)
    
    left join b(右表)
    
    on a.commonfiled = b.commonfiled

    查询思路:按照匹配字段(外键),b表记录与a表记录进行逐一匹配,若有n条匹配,则形成n行。若无匹配,则左表中得记录是全的,即使右表没有匹配的字段存在

    2.右连接

    select a.filed1,a.filed2,b.filed1
    
    from a (左表)
    
    right join b(右表)
    
    on a.commonfiled = b.commonfiled

    查询思路:按照匹配字段(外键),a表记录与b表记录进行逐一匹配,若有n条匹配,则形成n行。若无匹配,则右表中得记录是全的,即使左表没有匹配的字段存在 ()

    3.内连接

    select a.filed1,a.filed2,b.filed1
    
    from a (左表)
    
    inner join b(右表)
    
    on a.commonfiled = b.commonfiled

    查询思路:按照匹配字段(外键)进行逐一匹配,至少有一条匹配,才形成一行,若有n条匹配,则形成n行。(即:外键匹配形成行

    4.全连接

    select a.filed1,a.filed2,b.filed1
    
    from a (左表)
    
    full join b(右表)
    
    on a.commonfiled = b.commonfiled

    查询思路:按照匹配字段(外键)进行逐一匹配,有匹配的则匹配成一行,无匹配的则单独成一行。

    5.交叉连接

    全部匹配。即:生成笛卡尔积连接

     6.Union 和 Union  all

    Union和union all表示把查询的结果集并集起来,而不是交集

    限制: union和union all进行并集的字段必须是同一数据类型

    • union 是去掉重复值 union all不去掉重复值

    union用法

    select a.filed1 from a union b.filed1 from b 
    

    union all 用法

    select a.filed1 from a union all  b.filed1 from b 
    

     

  • 相关阅读:
    Codeforces Gym100502H:Clock Pictures(KMP算法)
    SPOJ MINSUB
    POJ 2796:Feel Good(单调栈)
    搭建(WSTMart)php电商环境时缺少fileinfo函数
    TP微信扫码支付
    tp3.2 支付宝app支付
    tp3.2 支付宝手机网站支付
    Thinkphp3.2+PHPQRCode 二维码生成示例
    百度UEditor粘贴或插入的表格不显示边框的解决办法
    PHP:导出数据到word(包含图片)
  • 原文地址:https://www.cnblogs.com/nelson-hu/p/6379557.html
Copyright © 2011-2022 走看看