vlookup函数简介
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)
参考资料:
本文地址:https://blog.csdn.net/qingsong3333/article/details/107307063
上一篇: 荐 查询无限级/三级分销的简单易用SQL
下一篇: mysql与oracle的一些区别