excel中两列数据,实现数据库查询的效果

背景

Excel表格功能很强大,遇到这种场景。
表格1中有全量数据,例如列A表示“姓名”,列B表示“成绩”
表格2中只有1列数据,且是子数据,例如列A表示“姓名"
要求:从表格1查询,在表格2中展示姓名的对应成绩

数据库

这个功能通过编码的方式,基于数据库来做会非常简单。但是如果我们面对的是一个单独的场景,或者根本不会编码,用无法实现了

用Excel本身支持的函数

用到了INDEX 和 MATCH 函数


image.png
  • match函数,第一个参数传入当前要查询的key,第二个参数传要搜索的姓名的全部数据库范围,第三个参数传0。MATCH(D2,A:A,0) 其中D2是要查询的key,即D列的赵四, A:A代表要在A列中搜索,0表示精确匹配,返回的值是赵四在A列中的索引
  • index函数,按照索引显示这一列的值,第一个参数传要显示其值的列,第二个参数传index。INDEX(B:B, index)表示在B列中显示第index个值
    最终的公式是,index值替换为match函数,如下所示
    =INDEX(B:B, MATCH(D2,A:A,0))

最终的效果如下图


image.png

你可能感兴趣的:(excel中两列数据,实现数据库查询的效果)