您的位置:首页 > 数据库

SQL学习笔记4:进阶之JOIN and UNION-JOIN,LEFT JOIN,RIGHT JOIN , FULL JOIN and UNION

2011-08-24 13:44 573 查看

一、 SQL JOINS用于在两个或多个表中查询。

  1. INNER JOIN: 当两个表至少存在一个匹配项时返回行。

语法规则:

SELECT column_name(s)

FROM table_name1

INNER JOIN table_name2

ON table_name1.column_name=table_name2.column_name

  1. LEFT JOIN: 即使在右表中没有匹配,仍返回左表中的所有行(返回左表中的所有行,以及右表中的匹配行)。

语法规则:

SELECT column_name(s)

FROM table_name1

LEFT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

  1. RIGHT JOIN: 即使在左表中没有匹配,仍返回右表中的所有行(返回右表中的所有行,以及左表中的匹配行)。

SELECT column_name(s)

FROM table_name1

RIGHT JOIN table_name2

ON table_name1.column_name=table_name2.column_name

  1. FULL JOIN: 返回左表和右表中的所有行,即使两表没有匹配项。

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

FROM Persons

FULL JOIN Orders

ON Persons.P_Id=Orders.P_Id

ORDER BY Persons.LastName

二、UNION用于连接两个或多个SELECT语句

每一个SELECT语句需要返回相同的列数,每列的数据类型要相同。

  1. UNION: 返回连接查询的结果时,去掉重复值。

SELECT column_name(s) FROM table_name1

UNION

SELECT column_name(s) FROM table_name2

  1. UNION ALL: 返回所有查询结果。

SELECT column_name(s) FROM table_name1

UNION ALL

SELECT column_name(s) FROM table_name2

参考资料:http://w3schools.com/sql/sql_join.asp

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐