SQL连接查询 内连接,左外连接,右外连接,全连接,交叉连接
2017-09-27 14:01
239 查看
连接条件可在FROM或WHERE子句中指定,建议在FROM子句中指定连接条件。WHERE和HAVING子句也可以包含搜索条件,以进一步筛选连接条件所选的行。
连接可分为以下几类:
内连接。(典型的连接运算,使用像 = 或 <> 之类的比较运算符)。包括相等连接和自然连接。
内连接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。
外连接。外连接可以是左向外连接、右向外连接或完整外部连接。
在FROM子句中指定外连接时,可以由下列几组关键字中的一组指定:
左向外连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。
RIGHT JOIN 或 RIGHT OUTER JOIN。
右向外连接是左向外连接的反向连接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。
FULL JOIN 或 FULL OUTER JOIN。
完整外部连接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。 是左连接和右连接的结合,即先执行一个左连接,然后执行一个右连接,最后将两个结果集执行union操作(union会消除重复记录)
交叉连接。交叉连接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉连接也称作笛卡尔积。 cross join
SELECT FROM A CROSS JOIN B
连接可分为以下几类:
内连接。(典型的连接运算,使用像 = 或 <> 之类的比较运算符)。包括相等连接和自然连接。
内连接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。
外连接。外连接可以是左向外连接、右向外连接或完整外部连接。
在FROM子句中指定外连接时,可以由下列几组关键字中的一组指定:
左向外连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。
RIGHT JOIN 或 RIGHT OUTER JOIN。
右向外连接是左向外连接的反向连接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。
FULL JOIN 或 FULL OUTER JOIN。
完整外部连接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。 是左连接和右连接的结合,即先执行一个左连接,然后执行一个右连接,最后将两个结果集执行union操作(union会消除重复记录)
交叉连接。交叉连接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉连接也称作笛卡尔积。 cross join
SELECT FROM A CROSS JOIN B
相关文章推荐
- SQL连接查询语句(内、外、交叉和合并查询)
- sql2005 内连接 外连接 交叉连接 查询 与联合查询(合并查询)
- SQL连接查询语句(内、外、交叉和合并查询)
- T_Sql 交叉连接以及查询等等 暑假第二天
- T_Sql 交叉连接以及查询等等 暑假第二天
- SQL连表查询:内连接、左联接、右连接、全连接、交叉连接讲解
- T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
- T-SQL查询——非聚集索引的覆盖,连接,交叉和过滤
- SQL 数据库 学习 031 查询-14 连接查询 --- 左(右)外连接、完全连接、交叉连接、联合
- SQL 多表查询(内连接、外连接和交叉连接,)
- T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
- T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
- T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤
- T-SQL查询高级--理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤(转)
- SQL----关系型数据库之连接查询
- SQL:内连接、左外连接、右外连接、全连接、交叉连接区别
- sql语句实现2个表的查询(内连接)
- SQL查询出字段进行连接
- 关于SQL的左右连接查询
- SQL Server之内连接 左连接 右连接 全连接 交叉连接