Jamzy Wang

life is a struggle,be willing to do,be happy to bear~~~

数据库中的表连接

2014-08-21 23:56

原创声明:本作品采用知识共享署名-非商业性使用 3.0 版本许可协议进行许可,欢迎转载,演绎,但是必须保留本文的署名(包含链接),且不得用于商业目的。

SQL 的连接(JOIN)语句将数据库中的两个或多个表组合起来。之所以将多个表连接起来是因为这些表中的某些属性代表的是相同的值,JOIN 语句的含义是把两张表的属性通过它们的值组合在一起。由”连接”生成的集合, 可以被保存为表, 或者当成表来使用.

基于 ANSI 标准的 SQL 列出了五种 JOIN 方式: 内连接(INNER)、全外连接(FULL OUTER)、左外连接(LEFT OUTER)、右外连接(RIGHT OUTER)和交叉连接(CROSS)。在特定情况下, 一张表(基本表, 视图, 或连接表)可以和自身进行连接,成为自连接(self-join)。但并不是所有的数据库都支持这些操作,下表给出了部分数据库支持的表连接操作:

此处输入图片的描述

一图胜千言:

此处输入图片的描述

看完下面3个链接应该什么都能明白了,本文将不再具体介绍每种连接了。

A Visual Explanation of SQL Joins

Difference between INNER and OUTER joins

连接 (SQL)

俗话说,洪水猛于虎,在数据库操作中,表的连接就充当了洪水的角色,因为表的连接中用到了笛卡尔积,当表中记录的数量达到几十万、几百万时,做表的连接将会非常耗时,所以经常会听到这样的建议,“如非必须,尽量避免表连接”,但一般的关系式数据库中很难避免表的连接,下面将重点介绍一下表连接使用中的一些注意点。

未完待续。

Ref:

A Visual Explanation of SQL Joins

Difference between INNER and OUTER joins

Visual Representation of SQL Joins

连接 (SQL)

Comments