码迷,mamicode.com
首页 > 数据库 > 详细

9. SQL -左连接,右连接,全连接,内连接,连接

时间:2015-03-20 01:36:04      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:关键字   数据库   

SQL LEFT JOIN 关键字

LEFTJOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。

LEFT JOIN 关键字语法

SELECT column_name(s)

FROM table_name1

LEFT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

注释:在某些数据库中, LEFT JOIN 称为 LEFTOUTER JOIN


原始的表 (用在例子中的):

"Persons"表:

技术分享

左连接(LEFTJOIN)实例

现在,我们希望列出所有的人,以及他们的定购 - 如果有的话。

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

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

FROM Persons

LEFT JOIN Orders

ON Persons.Id_P=Orders.Id_P

ORDER BY Persons.LastName

技术分享

LEFTJOIN 关键字会从左表 (Persons) 那里返回所有的行,即使在右表 (Orders) 中没有匹配的行。


关键字

RIGHTJOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。

RIGHT JOIN 关键字语法

SELECT column_name(s)

FROM table_name1

RIGHT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

注释:在某些数据库中, RIGHT JOIN 称为 RIGHTOUTER JOIN

原始的表 (用在例子中的):

"Persons"表:

技术分享

右连接(RIGHTJOIN)实例

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

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

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

FROM Persons

RIGHT JOIN Orders

ON Persons.Id_P=Orders.Id_P

ORDER BY Persons.LastName

结果集:

技术分享


关键字

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

FULL JOIN 关键字语法

SELECT column_name(s)

FROM table_name1

FULL JOIN table_name2

ON table_name1.column_name=table_name2.column_name

注释:在某些数据库中, FULL JOIN 称为 FULLOUTER JOIN

原始的表 (用在例子中的):

"Persons"表:

技术分享

全连接(FULLJOIN)实例

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

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

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

FROM Persons

FULL JOIN Orders

ON Persons.Id_P=Orders.Id_P

ORDER BY Persons.LastName

技术分享


关键字

在表中存在至少一个匹配时,INNERJOIN 关键字返回行。

INNER JOIN 关键字语法

SELECT column_name(s)

FROM table_name1

INNER JOIN table_name2

ON table_name1.column_name=table_name2.column_name

注释:INNERJOIN JOIN 是相同的。

原始的表 (用在例子中的):

"Persons"表:

技术分享

内连接(INNERJOIN)实例

现在,我们希望列出所有人的定购。

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

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

FROM Persons

INNER JOIN Orders

ON Persons.Id_P=Orders.Id_P

ORDER BY Persons.LastName

技术分享



本文出自 “Ricky's Blog” 博客,请务必保留此出处http://57388.blog.51cto.com/47388/1622366

9. SQL -左连接,右连接,全连接,内连接,连接

标签:关键字   数据库   

原文地址:http://57388.blog.51cto.com/47388/1622366

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!