【Access】SQL语句中左(外)连接的使用
大家好,上次课程我们讲了内连接的使用,本节课再跟随小编来学习一下左(外)连接。我们知道等值链接、自然链接、内连接在运行的时候,某些属性值不同会导致这些元组会被舍弃,那么如何保存这些被丢失的信息呢,此时外连接就解决了相应的问题。本节课我们先来学习下左(外)连接,这里先放上左(外)连接的SQL语法格式:
SELECT ……FROM 表1 LEFT JOIN 表2 ON 表1.某字段 = 表2.某字段
左(外)连接中的“左”是要把左表要舍弃的元组保留在结果集中,右表对应的列填NULL。
来看个例子,现在假设我们的Access数据库中有这样两张表,表一:有a、b、c三个字段;表二有c、d、e三个字段。如下图是两个表:
表一:
表二:
左(外)连接不能在Access查询设计器里面直接操作,必须在SQL设计视图里直接写SQL语句,下面我们做一个左(外)连接,书写如下的SQL语句:
我们可以看到用SQL语句中使用的是LEFT JOIN子句,然后用ON连接两个表的字段,这就是左(外)连接,下图是这个左(外)连接的结果:
我们可以看到左(外)连接不仅选择属性值相等的那些元组,其他在左表(表一)不相等的元组被保留下来了,在右表(表二)不相等的元组被舍弃掉了。
我刚才说左(外)连接不能直接在Access查询设计器里面直接操作,此时我们可以返回到Access查询设计器里看看是什么样的:
这下你该明白了,我们看到红色框里是一个连接箭头,在Access查询设计器里我们不能单纯地通过简单的拖动鼠标等做出这个效果,故需要直接在SQL设计视图里写SQL语句。
也许你现在还看不出左(外)连接有什么实际意义,因为你还没有碰到需要的时候,希望大家记住这个左(外)连接,日后相信一定会用到!
赞 (0)