zoukankan      html  css  js  c++  java
  • MySQL 连接join

     上图是sql的连接 其中mysql不支持 全外连接(full outer join outer)

    右外连接(rignt outer join,outer可以省略)

    SELECT *
    FROM table_a a
    INNER JOIN table_b b on a.aid = b.aid

    左外连接(left outer join,outer可以省略)

    SELECT *
    FROM table_a a
    LEFT OUTER JOIN table_b b on a.aid = b.aid

    SELECT *
    FROM table_a a
    LEFT JOIN table_b b on a.aid = b.aid where b.aid is null

    右外连接(rignt outer join,outer可以省略)

    SELECT *
    FROM table_a a
    RIGHT OUTER JOIN table_b b on a.aid = b.aid

    SELECT *
    FROM table_a a
    RIGHT JOIN table_b b on a.aid = b.aid where a.aid is null

    附录:

    sql脚本

    CREATE TABLE `table_a` (
      `aid` int(11) NOT NULL,
      `name` varchar(255) DEFAULT NULL,
      PRIMARY KEY (`aid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    CREATE TABLE `table_b` (
      `bid` int(11) NOT NULL,
      `aid` int(11) DEFAULT NULL,
      `name` varchar(255) DEFAULT NULL,
      PRIMARY KEY (`bid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    
    INSERT INTO `demo`.`table_a` (`aid`, `name`) VALUES ('1', 'name1');
    INSERT INTO `demo`.`table_a` (`aid`, `name`) VALUES ('2', 'name2');
    INSERT INTO `demo`.`table_a` (`aid`, `name`) VALUES ('3', 'name3');
    
    INSERT INTO `demo`.`table_b` (`bid`, `aid`, `name`) VALUES ('1', '1', 'name1');
    INSERT INTO `demo`.`table_b` (`bid`, `aid`, `name`) VALUES ('2', '2', 'name2');
    INSERT INTO `demo`.`table_b` (`bid`, `aid`, `name`) VALUES ('4', '4', 'name4');
    INSERT INTO `demo`.`table_b` (`bid`, `aid`, `name`) VALUES ('5', '1', 'name12');
    INSERT INTO `demo`.`table_b` (`bid`, `aid`, `name`) VALUES ('6', '1', 'name13');
  • 相关阅读:
    python-paramiko
    python函数
    pyinstaller打包py程序为exe文件
    centos7安装python3.6.4
    docker资源限制
    docker网络管理
    docker run命令
    dockerfile解析
    爬虫基础巩固
    爬取图虫网 示例网址 https://wangxu.tuchong.com/23892889/
  • 原文地址:https://www.cnblogs.com/ooo0/p/14201222.html
Copyright © 2011-2022 走看看