• mysql左连接右连接(查询两张表不同的数据)


    有两张表:一张A表he一张B表

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 ;
    right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录;
    inner join(等值连接) 只返回两个表中联结字段相等的行;

    表A数据:

    表B数据:

    1、查询两张表中都有的记录:

    sql: SELECT a.* FROM a INNER JOIN b ON a.a_id = b.b_id;

    2、查询表A中有,表B中没有的数据:

    sql: SELECT a.* FROM a LEFT JOIN b ON a.a_id = b.b_id WHERE b.b_id IS NULL;

    3、查询表A中没有,表B中有的数据:

    sql: SELECT b.* FROM a RIGHT JOIN b ON a.a_id = b.b_id WHERE a.a_id IS NULL;

    以上2的结果源于对LEFT JOIN的理解:

    sql: SELECT a.*,b.* FROM a LEFT JOIN b ON a.a_id = b.b_id;

    而以上3的结果源于对RIGHT JOIN的理解:

    sql: SELECT a.*,b.* FROM a RIGHT JOIN b ON a.a_id = b.b_id;


    ---------------------
    作者:YYQ_QYY
    来源:CSDN
    原文:https://blog.csdn.net/YYQ_QYY/article/details/78085516

  • 相关阅读:
    DHCP服务的配置(linux)
    LVM逻辑卷
    python的元素列表
    DOS和DDOS你知道多少?
    DOS与DDOS攻击的原理与防范之法
    常见HTTP状态代码,http报错代码翻译
    TCP和UDP优缺点
    DLL何时需共享内存管理器
    Delphi 指针大全
    Delphi编写DLL(以及静态和动态方式调用)
  • 原文地址:https://www.cnblogs.com/longgang/p/10142903.html
Copyright © 2020-2023  润新知