EXCEL按一个值查询出多条记录,怎么处理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL按一个值查询出多条记录,怎么处理?相关的知识,希望对你有一定的参考价值。

比如表2中值A对应2行记录:
12 A 2008 12
33 A 2007 5
怎么表1中把这2行数据查询出并排列出来?

EXCEL按一个值查询出多条记录,常见的用excel公式,可用两种方法:数组形式与建辅助列的形式。本例介绍运算更快的、更容易理解的建辅助列的形式解决此一对多查询的问题。

第一步,表2的数据构成如下图所示,在D列建辅助列,D2输入公式=A2&COUNTIF(A$2:A2,A2),并向下拉,复制公式。此举的目的是计算出A列中有多少个相同的编号,并且将此编号递增的加一个后缀序号。

第二步,要在表1实现查询,可在表1的相关区域输入下图所示的构成,在A2输入要查询的编码,在B2输入公式=IFERROR(VLOOKUP($A$2&ROW(A1),IF(1,0,表2!$D:$D,表2!$B:$B),2,0),""),并向下拉,复制公式;在C2输入公式=IFERROR(VLOOKUP($A$2&ROW(A1),IF(1,0,表2!$D:$D,表2!$C:$C),2,0),""),并向下拉,复制公式,即可完成了。

此时在A2输入编码A,即可查询出A对应的多个结果,见下图所示。

参考技术A 假设你的表2 "A"输入在A列
在另一张表sheet1中实现你说的查询,把sheet1的第一行设置与数据表表头一致
然后在A2单元格输入公式:
=INDEX(SHEET1!A:A,SMALL(IF(表2!$A$2:$A$1000="A",ROW($2:$1000),65536),ROW(1:1)))&""
此公式为数组公式,输入后按 ctrl+shift+enter 确认

将A2公式向右和向下复制,就实现你的目的了

补充:
你可以将公式中的"A",替换成一个单元格引用,然后在引用的单元格中输入查询条件,如输入A本回答被提问者采纳

SQL 查询多条符合条件的记录

我有1个Excel表格,上面有一列的字段是我要用来做条件的,本来如果只有几个条件,我可以select * from table where column_a in ('条件一','条件二')
但是我想查询的有70多个条件,我总不能全部写到in里去吧,因为刚入门,所以请高手指点简单的方法~谢谢~
我想在数据库里直接访问Excel里面那一列的数据可以吗,还是非要写到数据库的一个表中~?

select * from table where column_a in (select 条件N from table where XXX )

总之你的多个“条件”如果能用select出来的话,把结果放到in里就可以了。
参考技术A

    查询符合条件的记录,关键字 where 

    假如:表 table 中有3个字段,t1,t2,t3

    并且存在10条记录,和 t2有5条相同的记录

    select * from table where t2='123'

    以上SQL 就可以得到符合条件的5条记录

参考技术B 70几个条件,这本来就是业务逻辑 连业务逻辑都想省掉 那还写程序干什么呢。。
至于出现70几个条件,如果确定自己的表设计规范的话,那么是正常的 上百个字段的表是很正常的事 你需要确定自己的表是不是符合3NF
参考技术C 你这个在excel里没实用的方法.如果非要做可以按下面的做
将excel表里的数据写到excel里
然后
select * from table where column_a = (select aa from newTable)
aa就是newtable里放的你excel那一列的数据 当然如果你excel里的数据有规律的话就可以找别的好方法
参考技术D 如果是数字或者日期的话可以用大于与小于号。

以上是关于EXCEL按一个值查询出多条记录,怎么处理?的主要内容,如果未能解决你的问题,请参考以下文章

excel去重多条件求和,公式怎么设置?

c# sql双数据表按条件查询输出记录

JAVA中,向MYSQL插入多条数据,如何判断如果某记录已经存在就不插入

PostgreSQL 查询把多条记录合并一条

mysql 查询出多条数据并更新其中一个字段值,不让更新怎么办

mssql 2005查询 请问我要实现分组获取最大值,怎么写sql查询指令