【Access】SQL语句中全外连接的使用

大家好,上次Access课程我们讲了右(外)连接使用,本节课再跟随小编来学习一下全外连接。全外连接是在两表进行自然连接,只把左表和右表要舍弃的都保留在结果集中,相对应的列上填NULL。全外连接的语法格式是:

SELECT ……FROM 表1 FULL JOIN 表2 ON 表1.某字段 = 表2.某字段

但是由于Access使用的是Jet-SQL,Jet-SQL却不支持FULL JOIN。所以如果想在Access中达到全外连接的效果,必须做一个变通处理,例如:

SELECT ……FROM A LEFT JOIN B ON 表1.某字段 = 表2.某字段

UNION

SELECT ……FROM A RIGHT JOIN B ON 表1.某字段 = 表2.某字段

来看个例子,现在假设我们的Access数据库中有这样两张表,表一:有a、b、c三个字段;表二有c、d、e三个字段。如下图是两个表:

表一:

表二:

全外连接不能在Access查询设计器里面直接操作,必须在SQL设计视图里直接写SQL语句,下面我们做一个全外连接,书写如下的SQL语句:

下图是这个全外连接的结果:

我们可以看到全外连接不仅选择属性值相等的那些元组,其他在表一和表二不相等的元组被保留下来了。

全外连接一般用得比较少,大家看情况学习吧~

快捷查看
(0)

相关推荐

  • SQL Server--视图设计

    数据库的建立,步骤如下 1. 新建数据库,建表,如下图,很简单基本上右键新建就行,然后添加字段 2. 接下来要建立视图查询,查询2个表中,指定两个用户之间的消息,先要新建视图,点击新建查询即可,输入代 ...

  • 在VB6中用Select语句检索记录

    在VB6中用Select语句检索记录 在VB数据库程序设计中经常要检索记录,常用的是把一条SELECT语句传送给 Recordset对象的Open方法或Execute方法.下面就SELECT语句做一比 ...

  • 【Access】SQL语句中自然连接的使用

    大家好,上次课程我们讲了等值连接,本节课跟随小编来学习一下自然连接.自然连接是按照公共属性值相等的条件进行连接,是一种特殊的等值连接,公共属性值不相等的行会被删除,同时在结果中消除重复的属性列. 我们 ...

  • 【Access】SQL语句中内连接的使用

    大家好,上次课程我们讲了自然连接的使用,本节课再跟随小编来学习一下内连接.内连接的效果和等值连接是一样的,只不过在Access数据库中的操作不一样罢了,这里先放上内连接的SQL语法格式: SELECT ...

  • 【Access】SQL语句中左(外)连接的使用

    大家好,上次课程我们讲了内连接的使用,本节课再跟随小编来学习一下左(外)连接.我们知道等值链接.自然链接.内连接在运行的时候,某些属性值不同会导致这些元组会被舍弃,那么如何保存这些被丢失的信息呢,此时 ...

  • 【Access】SQL语句中右(外)连接的使用

    大家好,上次课程我们讲了左(外)连接使用,本节课再跟随小编来学习一下右(外)连接.这里先放上右(外)连接的SQL语法格式: SELECT --FROM 表1 RIGHT JOIN 表2 ON 表1.某 ...

  • 【Access】SQL语句中WHERE子句和HAVING 子句的异同

    初学SQL语句的时候,很多朋友总是无法理解HAVING 子句和WHERE子句之间区别,今天我们就来细细谈一谈这个问题.首先列出它们之间的相同和区别,然后我们举例说明. 一.相同点: 二者的相同点是在功 ...

  • 【Access】SQL语句中别名的使用之字段名别名

    别名主要使我们得到的查询结果更容易理解和阅读,关于别名的使用,我们还是先看个例子吧,如下图是一份简易的销售表: 现在假如我们想要查询每个员工的总销售额,我们可以建立如下的SQL查询: 运行一下得到如下 ...

  • 【Access】SQL语句中别名的使用之表名别名

    大家好,上次课我们学习了SQL语句中别名的使用之字段名别名的用法,今天我们学习SQL语句中别名的使用之表名别名,顾名思义,表名别名就是给表取一个别名,那么你会问有什么用呢,瞎折腾吗?肯定不是啦,我们看 ...

  • 成功sql语句中直接写变量

    public static PagedResultInOut<T> SqlPage<T>(string sql, string order, int page, int siz ...

  • mybatis sql语句中 in() 长度为0或null的情况

    比如: select * from A where colName IN <foreach collection="moCodeList" item="item&q ...