oracle 一对多查询_一对多查询,教你几个查询套路

最近在微信群里不少的小伙伴们都在问关于如何进行一对多查询的问题,今天世杰老师给大家列举了以下几个套路供大家选择。对于初学者来说,如果需要那么只要会前三种方法即可,后面的几种方法大家只在记住套路即可。

如下图所示,查询右侧员工编号为“45424”的所有的销售数量。

c77af35b0c0aaae753a806a03e872b27.png

1

方法01

辅助列+VLOOKUP

对于查询类的问题,大家第一时间可能想到的会是VLOOKUP函数,是的世杰老师给大家教一种简单的方法。

在A列前插入一列辅助列,在B2单元格中输入公式:

=COUNTIF(B$2:B2,B2)&"-"&B2,然后按Enter键完成后向下填充。

3e1fdebd96fc5abc26625bfb2c19c722.png

然后在G4单元格中输入公式:

=IFERROR(VLOOKUP(ROW(A1)&"-"&$H$2,$A$2:$E$13,5,0),"")

按Enter键后向下填充至没有内容为止。

方法02

高级筛选

对于一对多查询,高级筛选的功能也完成类似上面的查找。

Step-01:首先,将查找的条件列出来。条件的标题一行,条件对应在下一行,再列出要查询的字段的名称,如下图所示:

019fc9d165ba51e62a3dd617491f0f1b.png

Step-02:然后单击选项卡【数据】-【高级】,在弹出的对话框中按如下设置,然后单击【确定】,如下图所示:

73f392f3b1932fe66e63e2f277a695dc.png

结果如下图所示:

16586c3c303f7464074705577bc4ab2e.png

方法03

万金没函数组合

对于一对多的查询,有一个专门的查询套路的组合,即:

INDEX+SMALL+IF+ROW函数组合。

在H4单元格中输入公式:

{=INDEX(D:D,SMALL(IF($F$2=A:A,ROW(A:A),65533),ROW(A1)))&""}

按组合键键完成后向下填充至空白出现。

d0e825a7e971761de884fd05a101d147.png

方法04

VLOOKUP

VLOOKUP函数单独也能完成。

在H4单元格中输入公式:

{=IFERROR(VLOOKUP($F$2&ROW(A1),IF({1,0},$A$2:$A$13&COUNTIF(INDIRECT("a2:a"&ROW($2:$13)),$F$2),$D$2:$D$13),2,0),"")}

按组合键键完成后向下填充至空白出现。

310237e771da3b4a1222efe66473ad28.png

对于以上的问题,还能使用Power Query的方法完成查询。有兴趣的童鞋可以根据素材内容去自行练习。

将下面的连接复制到浏览器中打开然后下载:

链接:https://pan.baidu.com/s/1s16-Mzeas6IqGYu6ItCSKQ 

提取码:z8xw 

6b5f16e02cf1fe3eab6979e3ed2553ee.png

关注公众号,回复666

赠送职场超实用Excel模板1000例

覆盖日常学习、工作的真实场景

一键套用,省时省力

25847c2f0259bfa97b7b53358eefef1b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值