查找sql server 有问题的sql_Excel VBA+SQL 代替Vlookup精确查找

SQL代替Vlookup 精确查找(左连接 "Left Outer JOIN" 用法) 语法如下:

Select 表名 .字段1,表名 .字段2,表名 .字段3,表名 .字段4 FROM 查询表 AS 别名1 Left Outer JOIN 被查询表 AS 别名2 ON 别名1.字段名=别名2.字段名

看起来很复杂,用起来很简单。

源数据:

2d8f5bab472d4947b73c4dc7c74a30f1.png

问题如下

问题描述:需要按照查询工作表的要求,来查询数据表里面的姓名,基本工资,部门等数据。具体结果如下图

cd8d4a4302c32a6c7791f1969ab43e28.png

代码运行的结果如下:

f80e6cee8337a5cb4357f5d95fd12959.gif

代码如下:

adb758b71c0f56fbb33f328d49de443f.png

核心SQL语句

 Sql = "SELECT A.姓名,基本工资,部门 from[需查询$] as a left outer join [数据表$] as b on b.姓名=a.姓名 "

注意事项:

 For i = 0 To rst.Fields.Count - 1 .Cells(1, i + 1) = rst.Fields(i).Name '利用fields属性获取所有字段名,fields包含了当前记录有关的所有字段,fields.count得到字段的数量 '由于Fields.Count下标为0,又从0开始遍历,因此总数-1 Next 

另外:Left Outer JOIN 在SQL FROM语句中OUTER是可选的。通常习惯性写为: LEFT JOIN。

本例利用fields属性获取所有字段名,这句也基本是常用的语句。

私信 SQL 可以获取SQL代码的Excel文件

私信 视频 可以获取54集VBA入门视频

私信 VBA或 vba 可以获取文章中含VBA代码的Excel文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值