zoukankan      html  css  js  c++  java
  • SQL 四种连接查询(内连接、左连接、右连接、全连接)

    下面列出了您可以使用的 JOIN 类型,以及它们之间的差异。

    (1)     JOIN: 如果表中有至少一个匹配,则返回行(inner join)

    (2)     LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行

    (3)     RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行

    (4)     FULL JOIN: 只要其中一个表中存在匹配,就返回行

    以下面两张数据库表为例:

    "Persons" 表:

    Id_P

    LastName

    FirstName

    Address

    City

    1

    Adams

    John

    Oxford Street

    London

    2

    Bush

    George

    Fifth Avenue

    New York

    3

    Carter

    Thomas

    Changan Street

    Beijing

    "Orders" 表:

    Id_O

    OrderNo

    Id_P

    1

    77895

    3

    2

    44678

    3

    3

    22456

    1

    4

    24562

    1

    5

    34764

    65

    结果集:

    (1)       内连接

    SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

    FROM Persons

    INNER JOIN Orders

    ON Persons.Id_P = Orders.Id_P

    ORDER BY Persons.LastName

    (2)       左连接

    SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

    FROM Persons

    LEFT JOIN Orders

    ON Persons.Id_P=Orders.Id_P

    ORDER BY Persons.LastName

    (3)  右连接

    SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

    FROM Persons

    RIGHT JOIN Orders

    ON Persons.Id_P=Orders.Id_P

    ORDER BY Persons.LastName

    (4)       全连接

    SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

    FROM Persons

    FULL JOIN Orders

    ON Persons.Id_P=Orders.Id_P

    ORDER BY Persons.LastName

  • 相关阅读:
    SonarQube
    Gerrit
    Jenkins
    Jenkins
    GitLab
    GitLab
    GitLab
    centos7配置国内yum源
    CentOS7 ping: unknown host www.baidu.com
    VirtualBox下安装CentOS7系统
  • 原文地址:https://www.cnblogs.com/xuanwei-qingfeng/p/6738307.html
Copyright © 2011-2022 走看看