加入是用来从多个表中的行结合起来。每当在一个SQL语句的FROM子句中列出的两个或多个表进行联接。
有不同类型的联接。让我们看看几个例子。
内部联接(简单的加入)
机会是,你已经写了一个SQL语句,使用一个内部联接。这是最常见的类型,加入。内部联接满足联接条件的多个表返回所有行。
代码如下 | 复制代码 |
SELECT suppliers.supplier_id, suppliers.supplier_name, orders.order_date |
这条SQL语句将返回从那里是一个匹配的供应商和订单表supplier_id价值的供应商和订单表的所有行。
让我们看看一些数据解释工作的内在联结如何:
我们有两个领域的供应商(supplier_id和supplier_名称)表。
它包含以下数据:
supplier_id | supplier_name |
---|---|
10000 | IBM |
10001 | Hewlett Packard |
10002 | Microsoft |
10003 | NVIDIA |
We have another table called orders with three fields (order_id, supplier_id, and order_date).
It contains the following data:
order_id | supplier_id | order_date |
---|---|---|
500125 | 10000 | 2003/05/12 |
500126 | 10001 | 2003/05/13 |
代码如下 | 复制代码 |
SELECT suppliers.supplier_id, suppliers.supplier_name, orders.order_date |
结果
supplier_id | name | order_date |
---|---|---|
10000 | IBM | 2003/05/12 |
10001 | Hewlett Packard | 2003/05/13 |
Outer Join
先看一个实例
代码如下 | 复制代码 |
select suppliers.supplier_id, suppliers.supplier_name, orders.order_date |
这条SQL语句将返回所有行从供应商表,并只有那些从订单表中的行的联接字段相等。
(+),后orders.supplier_id场表示,如果在供应商的表supplier_id价值不存在订单表,订单表中的各个领域将作为
上面的SQL语句也可以写成如下形式:
代码如下 | 复制代码 |
select suppliers.supplier_id, suppliers.supplier_name, orders.order_date |
看看结果
supplier_id | supplier_name |
---|---|
10000 | IBM |
10001 | Hewlett Packard |
10002 | Microsoft |
10003 | NVIDIA |
We have a second table called orders with three fields (order_id, supplier_id, and order_date).
It contains the following data:
order_id | supplier_id | order_date |
---|---|---|
500125 | 10000 | 2003/05/12 |
500126 | 10001 | 2003/05/13 |
代码如下 | 复制代码 |
select suppliers.supplier_id, suppliers.supplier_name, orders.order_date |
结果为
supplier_id | supplier_name | order_date |
---|---|---|
10000 | IBM | 2003/05/12 |
10001 | Hewlett Packard | 2003/05/13 |
10002 | Microsoft | |
10003 | NVIDIA |
创造与魔法 安卓版v1.0.0750
创造与魔法是一款开放世界手游,在游戏中玩家可探索这个奇妙的世
创造与魔法修改版 最新版v1.0.0750
创造与魔法无限点券版是款探索冒险游戏,该款游戏的操作还是蛮自
战争与文明官方版本 安卓版v1.7.16
战争与文明是一款由上海邮通科技有限公司开发的战争策略游戏,这
迷你世界0元领皮肤无限迷你币版 最新安卓版v1.43.0
迷你世界0元购买皮肤版是这款开放沙盒冒险建造游戏的特殊破解版
创造与魔法无限经验版 安卓版v1.0.0750
创造与魔法无限经验版是款可以改造环境,整个游戏的自由度还是蛮