当前位置: 移动技术网 > IT编程>数据库>MSSQL > vlookup函数简介

vlookup函数简介

2020年07月14日  | 移动技术网IT编程  | 我要评论
vlookup是excel中常用的一个查找函数,作用如下:在区域Z中查找第一列的值为V的记录。 如果找到这样的记录,返回该记录的第N列。 对应到SQL的话,类似如下:select colN from Z where 第一列='V' fetch first 1 rows only;select colN from Z where 第一列<='V' fetch first 1 rows only;vlookup官方介绍的参数如下,有4个参数,:VLOOKUP (lookup_value,

vlookup是Excel中常用的一个查找函数,作用如下:

在区域Z中查找第一列的值为V的记录。 如果找到这样的记录,返回该记录的第N列。 vlookup支持模糊查找和精确查找,对应到SQL的话,类似如下:

select colN from Z where 第一列='V' fetch first 1 rows only; (对应精准查找)
select colN from Z where 第一列<='V' fetch first 1 rows only; (对应模糊查找,注意,模糊查找并不对应SQL中的 like)

vlookup官方介绍的参数如下,有4个参数,:
VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])
VLOOKUP (你想要查找的内容,要查找的位置,包含要返回的值的区域中的列号,返回近似或精确匹配-表示为 1/TRUE 或 0/假)

第一个参数是待查找的内容,类似SQL中的'V'
第二个参数是查找的区域,类似SQL中的Z
第三个参数是返回匹配记录中的第几列,类似SQL中的colN,这里第几列是个相对值,即选中区域中的第几列。
第四参数表示是精确匹配(FALSE),还是模糊匹配(TRUE)。 这里的模糊匹配要求区域中第一列已经按升序排好序,是默认选项,可以不填写或者填写1或者填写TRUE,如果使用了模糊匹配,类似SQL中的<=。 如果是精确匹配,则不要求排好序。

示例1,精确匹配:
输出王四所在城市
=VLOOKUP("王四", A2:C11,2,FALSE)

 

示例2 模糊匹配:
输出第一个姓'王'的人所在城市(第1列已经排好序了)
=VLOOKUP("王", A2:C11,2,TRUE)

注意:这里结果并不符合我们的要求,原因很简单,因为采用了模糊匹配,所以相当于条件为 <='王' ,而'王四'并不满足这个条件,所以第1个匹配的记录为'滕九'

还是使用精准匹配吧,使用"*"作为通配符。
=VLOOKUP("王"&"*", A2:C11,2,FALSE)

 

参考资料:

vlookup 官方文档

本文地址:https://blog.csdn.net/qingsong3333/article/details/107307063

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网