暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

SQL查询A表有B表无,A、B表都有的清单

米宏Office 2023-01-13
307

我的目标:让中国的大学生走出校门的那一刻就已经具备这些Office技能,让职场人士能高效使用Office软件为其服务。支持我,也为自己加油!


今天分享一位群友昨天问的问题:如何用SQL查询A表有B表无,A、B表都有的资产清单。

举例如下:
这是A表。
这是B表。
要求:用SQL语句查询
1、列出A表有,B表也有的资产清单。
2、列出A表有,B表无的资产清单。


首先看第一个问题
A、B表共有,我们立刻会想到用内连接来查询,同时为了避免同一个资产重复出现我们可以用DISTINCT,所以整个语句也不难写:



语句:
select DISTINCT [A$].资产 from  [A$] inner join [B$] on [A$].资产=[B$].资产
当然我们也可以用条件语句进行查询:
select DISTINCT [A$].资产 from  [A$] ,[B$] where [A$].资产=[B$].资产

再看第二个问题
A表有,B表无的资产清单,首先我们会想到连接中的左连接,左连接中左边表中的记录全会显示出来,看下效果:
语句:
select DISTINCT [A$].资产,[B$].资产 from  [A$] left join [B$] on [A$].资产=[B$].资产
可以看到,以上结果中A表中的所有资产都列出来了,B表中与A表中共有的资产也对应列出来了,第二列中那些为空的单元格对应的第一列中的资产就是我们想要的清单。
如何才能一步到位列出A表中有B表中无的清单呢?
在上述语句的后面再加一个条件,如下:
语句:
select DISTINCT [A$].资产 from  [A$] left join [B$] on [A$].资产=[B$].资产 where [B$].资产 is null
以上便是用SQL查询A、B表共有,A表有B表无的方法。

本节先分享到这里,祝大家每天都有进步。

系统学习请扫码,课程支持答疑哦
♥一次遇见,终身相伴♥

↙点击“阅读原文”系统学习Office知识!

文章转载自米宏Office,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论