首页
学习
活动
专区
圈层
工具
发布

VLOOKUP之多条件查找

上次的VLOOKUP基础入门,没有图也没有GIF,估计很难看得下去 VLOOKUP 之一 这次是多条件查找.这份问题源于我在公司遇到的情况: 从数据库导出的数据呢,对个人信息进行了脱敏处理,所以电话号码的末两位被隐藏了...这也是可以的 下面就是我要说明的,VLOOKUP的多条件查找 一般来讲,名字可能有重复的,手机号前9位也可能有重复的,但是呢,名字+手机号的组合一般是不会有重复的了.在这种情况下,首选是建立一个辅助列作为唯一识别字段...IF(0,"随意填写反正不会用到",C:C) IF的用法一直都是IF(判断条件,条件符合则这样,条件不符合则那样).看起来非此即彼的选择,实际上是可以鱼和熊掌兼得的,那就是写成IF({1,0},这样,那样...)的数组函数.这样IF函数会先运行一遍{1},也就时'条件符合则这样'那部分,然后再运行一遍{0},也就是'条件不符合则那样',在我们的多对一函数中,借助IF形成了一个具体的多列的范围.也就是A:A&LEFT...(B:B,9)作为范围的第一列,C:C作为范围的第2列,也就是{A:A&LEFT(B:B,9),C:C}这样一个两列N行的数据范围 所以啊,VLOOKUP第3个参数,我们要输入2,因为IF构造的范围只有

1.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL(条件约束)

    前引:为了校验数据,让数据的正确性能够得到保证,约束,能够引进更多的检查操作,但是也会增加系统的成本开销 1:not null 指示某列不能存储null 应用①create table student(...id int not null , name varchar(20)); 2:unique 保证某列的每一行必须有唯一的值,后续再插入数据的时候,都会先进行查询表里是否已经存在这个数据了 应用:create...id数值就不可以了 注:①unique可以为空,但是主键不能为空 ②如果数据库是由多个mysql服务器构成的“集群”,此时自增主键就无法生效了 6:foreign key(外键约束) (...) , classId int , foreign key(classId) references class(classId)); 注:前面几个约束关键字,都是哪一列需要约束,就在该列的后面加上约束条件...约束是相互的:在删除“父表”中的数据的时候,如果子表中有数据受该父表此数据的约束的话,是删不掉的,要确保子表中没有数据引用父表的记录,才能删除父表上的该数据 关于外键约束还有一个应用场景 应用场景:现在订单表中把商品

    3.1K10

    Excel公式技巧97:多条件查找

    有时候,我们需要根据多个条件在数据表中查找值,此时,就需要使用一些公式技巧了。本文的示例使用INDEX函数/MATCH函数组合的数组公式来实现多条件查找。...示例1:满足两个条件 如下图1所示,需要查找指定汽车制造商的车型的售价。其中,单元格区域A1:C19是数据表,单元格F1和F2中是条件。 ?...接下来,MATCH函数在该数组中查找1的位置,即为满足条件的数据所在的位置,传递到INDEX函数中获取相应的数据值。...示例2:满足四个条件 如下图3所示,需要查找指定的汽车制造商中某型号汽车且指定座椅和车轮的售价。其中,数据表在单元格区域A1:E19,查找条件在单元格区域H1:H4。 ?...图4 公式利用了四个条件合并起来的值唯一的特点,将F1:F4中的值连接起来成为一个值,然后将查找表中前4列的值也连接起来作为被查找值,使用MATCH函数查找得到满足条件的数据所在的位置,然后传递到INDEX

    3.2K30

    MySQL数据库(四):约束条件

    安装环境: 操作系统版本:RHEL 6.5 版本:MYSQL 5.5 约束条件的作用: 限制如何给字段赋值,创建表的时候如果没有设置的话,就是mysql建表的默认设置包括表结构的后四列。...1、NULL 是否允许空值 在不设置的时候,默认允许字段值为空 mysql> desc yueshu; +-------+--------------------+------+-----+----...sex  | +------+------+------+ |      | NULL | boy  | +------+------+------+ 1 row in set (0.00 sec) mysql...> insert into yueshu(age) values(null); Query OK, 1 row affected, 1 warning (0.00 sec) 查询字段的值 mysql>...建表时,没有设置字段的默认值,mysql吧字段的默认值设置为空 例子: mysql> create table yueshu(     -> name varchar(20) not null,

    2.4K50

    Excel公式技巧80:多条件查找值

    我们经常会碰到要查找满足多个条件的值,如下图1所示,想要查找以“凉”开头且价格高于20的商品。 ? 图1 根据前两篇文章中学到的技巧,使用INDEX/MATCH函数组合来完成。...公式中使用了逻辑运算: (表1[价格]>E1)*(LEFT(表1[商品],1)="凉") 生成数组: {0;0;0;0;0;0;0;0;0;1;0} 其中,1表示价格大于指定值且名称以指定字开头的商品,0表示不满足条件的商品...上述数组作为MATCH函数的参数,查找1出现的位置: MATCH(1,{0;0;0;0;0;0;0;0;0;1;0},0) 即满足条件的商品的位置: 10 代入INDEX函数中: =INDEX(表1[商品...巧妙构造MATCH函数的参数以查找值的位置 2. 使用逻辑与运算来生成数组,运算后TRUE/FALSE值转换成1/0,且1占据同时满足条件的数值所在的位置。

    1.8K40

    mysql中条件函数

    ——周国平《风中的纸屑》 在我们日常开发中,有时可能会在SQL中写一些条件,例如这里一个例子 这里有这样一张表,数据如下: 如果我们需要把未认证(状态为NOT_AUTH)的用户放到前面排序显示,在不影响分页的情况下...我们可以这么写 SELECT *,IF(status='NOT_AUTH','NOT_AUTH',null) AS sort FROM `user` ORDER BY sort DESC 这里使用到了MYSQL...的IF函数 IF([条件],[为true时值],[为false时值]) 例如我们需要整体排序,认证中的在最前,然后是未认证的,最后是已认证的 我们则可以使用MYSQL中的CASE、WHEN、THEN、ELSE...WHEN STATUS = 'HAS_AUTH' THEN 2 ELSE 999 END ) AS sort FROM `user` ORDER BY sort ASC 这里 CASE WHEN [条件...1] THEN [条件1满足时值] WHEN [条件2] THEN [条件2满足时值] WHEN [条件3] THEN [条件3满足时值] ELSE [条件都不满足时值] END Tips:在除了查询语句中

    4.8K10

    MySQL ORDER BY IF() 条件排序

    在做sqlzoo的时候,碰到一个SQL的排序问题,他把符合条件的单独几行,可以放在查询结果的开始,或者查询结果的尾部 通过的方法就是IN语句(也可以通过IF语句) 自己做了个测试,如下,这个是表的所有内容...正如上面一段说的,你可以把if 语句看成是独立的column,所以你也可以为他添加排序条件ASC或者DESC,当然默认是ASC,可以不写。...使用ORDER BY配合IN语句 上面一个是满足单个条件,返回0或者1,那如果需要用到一个范围呢?...这样的话,birth IN语句会进行判断,如果birth满足条件,返回1,不满足,返回0 所以,满足条件的两行,因为返回值是1,进行ASC排序的时候,就被放置在了最后。

    5.1K50

    mysql之条件查询

    文章目录 进阶2:条件查询 分类: 一、按条件表达式筛选 二、按逻辑表达式筛选 三、模糊查询 一、按条件表达式筛选 案例1:查询工资>12000的员工信息 案例2:查询部门编号不等于90号的员工名和部门编号...以下面如图数据库为例编写条件查询案例 ?...语法: select 查询列表 from 表名 where 筛选条件; 分类: 一、按条件表达式筛选 简单条件运算符:> < = !...and or not &&和and:两个条件都为true,结果为true,反之为false ||或or: 只要有一个条件为true,结果为true,反之为false !...或not: 如果连接的条件本身为false,结果为true,反之为false 三、模糊查询 like between and in is null 一、按条件表达式筛选 案例1:查询工资>12000的员工信息

    5.3K20

    MySQL where条件探索

    MySQL查询数据过程探索 等值匹配原则 通过主键查找,不需要回表,因为主键下面的叶子节点记录本行的所有数据。...通过唯一索引查找,如果你select的不是这个唯一索引而是类似select *这样非次唯一索引列,那么需要回表,通过主键找到本行所有数据 通过联合索引,情况同唯一索引,如果select的内容不是此索引包含的列...因为telephone不在次索引中,还需通过主键去查找telephone的值。...最左前缀匹配原则,仅针对联合索引 这个规则就像盖楼房,得一层盖好再盖另一层,不可能直接盖3楼,mysql来了也不行。...最左匹配原则,也就是前面的记录必须是确定的,这样子才能继续对后面的数据判断。

    2.9K20

    MySQL数据库,SQL的where条件提取

    在有了以上的t1表之后,接下来就可以在此表上进⾏SQL查询了,获取⾃⼰想要的数据。...接下来,让我们抛弃数据库的思想,直接思考这条SQL的⼏个关键性问题: 此SQL,覆盖索引idxt1bcd上的哪个范围? 起始范围:记录[2,2,2]是第⼀个需要检查的索引项。...索引起始查找范围由b >= 2,c > 1决定。 终⽌范围:记录[8,8,8]是第⼀个不需要检查的记录,⽽之前的记录均需要判断。...索引的终⽌查找范围由b < 8决定; 在确定了查询的起始、终⽌范围之后,SQL中还有哪些条件可以使⽤索引idxt1bcd过滤?...由于⼀个范围,⾄少包含⼀个起始与⼀个终⽌,因此Index Key也被拆分为Index First Key和Index Last Key,分别⽤于定位索引查找的起始,以及索引查询的终⽌条件。

    3.6K10
    领券