`
dasheng
  • 浏览: 148006 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SQL FULL JOIN 关键字

SQL 
阅读更多

SQL FULL JOIN 关键字

只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。

FULL JOIN 关键字语法

SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2 
ON table_name1.column_name=table_name2.column_name

注释:在某些数据库中, FULL JOIN 称为 FULL OUTER 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

全连接(FULL JOIN)实例

现在,我们希望列出所有的人,以及他们的定单,以及所有的定单,以及定购它们的人。

您可以使用下面的 SELECT 语句:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
FULL JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName

结果集:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
Bush George  
    34764

FULL JOIN 关键字会从左表 (Persons) 和右表 (Orders) 那里返回所有的行。如果 "Persons" 中的行在表 "Orders" 中没有匹配,或者如果 "Orders" 中的行在表 "Persons" 中没有匹配,这些行同样会列出。

 

与以下的sql语句等同:

 

SELECT a.LastName, a.FirstName, b.OrderNo
FROM Persons a,
Orders b
where a.Id_P(+)=b.Id_P(+)
ORDER BY a.LastName

分享到:
评论

相关推荐

    【SQL高级(三)】【SQL 连接(JOIN)】

    文章目录SQL 连接(JOIN)不同的 SQL JOINSQL INNER JOIN 关键字SQL LEFT JOIN 关键字SQL RIGHT JOIN 关键字SQL FULL OUTER JOIN 关键字 SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来。 下图展示了 ...

    SQL 常用关键字解析

    - **FULL JOIN**:返回左表和右表中所有匹配的行。如果任意一边没有匹配,则结果为 `NULL`。 - **CROSS JOIN**:返回两个表的所有可能组合。 #### 十三、WHERE 和 FROM 子句 - **WHERE 子句**:用于过滤数据,仅...

    数据库教程

    - **SQL FULL JOIN关键字**: - 返回两个表中的所有行。 - **SQL UNION和UNION ALL操作符**: - **UNION**:只包含一次所有输入集合中的唯一值。 - **UNION ALL**:包含所有值,包括重复的行。 - **SQL SELECT ...

    经典sql语句笔记(sql 关键字)

    SQL的关键字包括但不限于:`SELECT`, `INSERT`, `UPDATE`, `DELETE`, `CREATE`, `DROP`, `ALTER`, `GRANT`, `REVOKE`, `JOIN`, `LEFT JOIN`, `RIGHT JOIN`, `INNER JOIN`, `OUTER JOIN`, `LIKE`, `BETWEEN`, `IN`, `...

    sql join( inner join, outer join) 分析

    JOIN关键字是SQL查询中的关键部分,它允许我们在不同的表之间建立联系,以获取更丰富的信息。在这个主题中,我们将深入探讨INNER JOIN和OUTER JOIN,它们是JOIN的两种主要类型。 首先,我们来看INNER JOIN。INNER ...

    SQL语句的各个关键字的解析过程详细总结

    如果存在外连接(LEFT、RIGHT或FULL OUTER JOIN),即使匹配不到的记录也会被包含进来,以保留外部表的所有行。 接着,`WHERE`子句对`FROM`产生的临时表进行进一步过滤,只保留满足指定条件的行,生成新的虚拟表VT2...

    SQL 左外连接,右外连接,全连接,内连接 四种连接的差异.doc

    全连接使用 FULL JOIN 或 FULL OUTER JOIN 关键字来指定。 例如,在 authors 表和 publishers 表中,使用全连接可以检索所有作者和出版社的信息,并显示他们的城市信息。 四、内连接(INNER JOIN) 内连接返回...

    SQL查询相关技术(常用SQL查询技术、比较逻辑运算符查询、SQL关键字查询、表结构与性能、时间与谓词、聚合函数、子查询与连接查询、交叉表、常用数据操作高级应用、试图存储过程和触发器的使用)

    3. **SQL关键字查询**:SQL的关键字如WHERE、GROUP BY、HAVING、ORDER BY、JOIN等用于构建查询结构。WHERE用于设置查询条件,GROUP BY用于数据分组,HAVING用于对分组后的数据进行筛选,ORDER BY用于排序结果,JOIN...

    MySQL JOIN 语法说明与 INNER JOIN 语法用法实例.docx

    6. MySQL 没有提供 SQL 标准中的 FULL JOIN(全连接),可以使用 UNION 关键字来合并 LEFT JOIN 与 RIGHT JOIN,达到模拟 FULL JOIN 的目的。 7. CROSS JOIN 是一种特殊的 JOIN 类型,在不指定 ON 条件下,CROSS ...

    非常详细的SQL--JOIN之完全用法

    Microsoft SQL Server 2000 支持 SQL-92 关键字,包括 LEFT OUTER JOIN、RIGHT OUTER JOIN、FULL OUTER JOIN 等。这些关键字可以在 FROM 子句中使用,以指定外联接的类型。 旧式 Transact-SQL 外联接语法 SQL ...

    Microsoft SQL Server 2008技术内幕:T-SQL查询.pdf

    2. **联接操作**:书中会详细介绍INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN等不同类型的联接,以及如何使用JOIN关键字组合多个表的数据。 3. **子查询**:子查询可以在SELECT、FROM和WHERE子句中嵌套,...

    数据库语法,关键字文档

    例如,JOIN操作用于合并两个或多个表的数据,如 INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL OUTER JOIN,每种类型都有其特定的结合方式。 Transactions管理也是SQL Server的重要部分,BEGIN TRANSACTION、COMMIT...

    SQL连接查询语句实例

    而显式内连接则使用INNER JOIN关键字,如语句2所示。以下是一个内连接的例子: ```sql -- 隐式内连接 SELECT O.ID, O.ORDER_NUMBER, C.ID, C.NAME FROM ORDERS O, CUSTOMERS C WHERE O.CUSTOMER_ID = C.ID; -- ...

    sql server 2005 技术内幕t-sql查询源码

    2. **子查询与联接**:讲解如何使用子查询进行嵌套查询,以及各种类型的联接操作,如内连接(INNER JOIN)、外连接(LEFT JOIN、RIGHT JOIN、FULL JOIN)和交叉连接(CROSS JOIN)。 3. **集合操作**:可能涉及到...

    T-SQL示例大全,一个很不错的SQL示例,更快速掌握SQL,推荐使用。

    2. **联接操作**:通过JOIN关键字,可以将多个表的数据进行合并查询,如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN,满足不同类型的关联需求。 3. **聚合函数**:T-SQL提供了一系列聚合函数,如COUNT()...

    sql.rar_sql外联查询

    左外联返回左表(在JOIN关键字之前指定的表)的所有记录,以及右表中与左表匹配的记录。如果右表中没有匹配的记录,结果将显示为NULL。以下是一个左外联的例子: ```sql SELECT column_name(s) FROM table1 LEFT ...

    SQL commands

    常用的JOIN有INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。例如,从两个表中获取匹配数据: SELECT * FROM Table1 INNER JOIN Table2 ON Table1.id = Table2.id 14. SQL OUTER JOIN OUTER JOIN用于获取左表...

    sql-92-bnf.tar.gz_BNF SQL92_bnf_sql b_sql server bnf_sql92 bnf

    - **联接操作**:提供了更丰富的JOIN类型,如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN。 - **集合操作**:UNION、INTERSECT和EXCEPT用于合并或比较多个查询结果集。 - **窗口函数**:ROW_NUMBER、...

    SQL语句中不同的连接JOIN及join的用法

    左外连接会返回左表(在JOIN关键字前的表)的所有行,即使在右表中没有匹配的行。对于那些在右表中没有匹配的左表行,结果中的对应列将填充NULL值。例如: ```sql SELECT s.name, g.sn, g.score FROM student ...

Global site tag (gtag.js) - Google Analytics