您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

sql join on关联查询语句用法

2024/3/2 7:23:07发布16次查看
sql join 包括很多种查询如内连,外连outer 这些在用法上大致相同,但是相出来的结果既不同,下面我们来看看这些实例吧。
加入是用来从多个表中的行结合起来。每当在一个sql语句的from子句中列出的两个或多个表进行联接。
有不同类型的联接。让我们看看几个例子。
 内部联接(简单的加入)
机会是,你已经写了一个sql语句,使用一个内部联接。这是最常见的类型,加入。内部联接满足联接条件的多个表返回所有行。
 代码如下 复制代码
select suppliers.supplier_id, suppliers.supplier_name, orders.order_date
from suppliers, orders
where suppliers.supplier_id = orders.supplier_id;
这条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
from suppliers, orders
where suppliers.supplier_id = orders.supplier_id;
结果
supplier_id name order_date
10000 ibm 2003/05/12
10001 hewlett packard 2003/05/13
outer join
先看一个实例
 代码如下 复制代码
suppliers.supplier_id, suppliers.supplier_name, orders.order_date
from suppliers, orders
where suppliers.supplier_id = orders.supplier_id(+);
这条sql语句将返回所有行从供应商表,并只有那些从订单表中的行的联接字段相等。
(+),后orders.supplier_id场表示,如果在供应商的表supplier_id价值不存在订单表,订单表中的各个领域将作为显示的结果集。
上面的sql语句也可以写成如下形式:
 代码如下 复制代码
select suppliers.supplier_id, suppliers.supplier_name, orders.order_date
from suppliers, orders
where orders.supplier_id(+) = suppliers.supplier_id
看看结果
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
from suppliers, orders
where suppliers.supplier_id = orders.supplier_id(+);
结果为
supplier_id supplier_name order_date
10000 ibm 2003/05/12
10001 hewlett packard 2003/05/13
10002 microsoft
10003 nvidia
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product