精华内容
下载资源
问答
  • 作用同 find_in_set 在mysql workbench中搞了半天,创建函数的语法老是报错,最后通关的一份记录备忘,关键还是要正确使用DELIMITER DELIMITER $$ DROP function IF EXISTS mealbooker.fGetMenuItemNameZh;...

    某表中存的menuitem字段值为"3,4",要求找出3和4对应的menuitem值:

    SELECT name FROM tb_menuitem where CONCAT(',', '3,4', ',')like CONCAT('%,', CAST(id AS CHAR),',%')  --id前后加个逗号反正4772的值用772就能查出来,作用同 find_in_set

    在mysql workbench中搞了半天,创建函数的语法老是报错,最后通关的一份记录备忘,关键还是要正确使用DELIMITER

    DELIMITER $$

    DROP function IF EXISTS mealbooker.fGetMenuItemNameZh;  $$

    DELIMITER $$

    CREATE FUNCTION mealbooker.fGetMenuItemNameZh(

    ItemIDs varchar(50)) RETURNS varchar(800) CHARSET gb2312

    BEGIN

    DECLARE myres varchar(800);

    SET myres = '';

    SELECT GROUP_CONCAT(name SEPARATOR ',') INTO myres FROM mealbooker.tb_menuitem

    where CONCAT(',', ItemIDs, ',')like CONCAT('%,', CAST(id AS CHAR),',%');

    RETURN myres;

    END $$

    展开全文
  • mysql 反向查询 函数创建

    千次阅读 2014-05-30 12:18:59
    在mysql workbench中搞了半天,创建函数的语法老是报错,最后通关的一份记录备忘,关键还是要正确使用DELIMITER DELIMITER $$ DROP function IF EXISTS mealbooker.fGetMenuItemNameZh; $$  ...

    某表中存的menuitem字段值为"3,4",要求找出3和4对应的menuitem值:

    SELECT name FROM tb_menuitem where CONCAT(',', '3,4', ',')like CONCAT('%,', CAST(id AS CHAR),',%')  --id前后加个逗号反正4772的值用772就能查出来,作用同 find_in_set


    在mysql workbench中搞了半天,创建函数的语法老是报错,最后通关的一份记录备忘,关键还是要正确使用DELIMITER

    
    DELIMITER $$
    DROP function IF EXISTS mealbooker.fGetMenuItemNameZh;  $$ 
    
    
    DELIMITER $$
    CREATE FUNCTION mealbooker.fGetMenuItemNameZh(
    ItemIDs varchar(50)) RETURNS varchar(800) CHARSET gb2312
    BEGIN 
        DECLARE myres varchar(800);
        SET myres = '';
    
    
        SELECT GROUP_CONCAT(name SEPARATOR ',') INTO myres FROM mealbooker.tb_menuitem 
            where CONCAT(',', ItemIDs, ',')like CONCAT('%,', CAST(id AS CHAR),',%');  
     
        RETURN myres;
    END $$


    展开全文
  • 【一】VLOOKUP函数(1)Lookup_value 查找值(2)Table_array 查找区域,查找值必须在首列(3)Col_index_num结果所在列(4)Range_lookup0/FALSE,精确匹配1/TRUE,模糊匹配例1:反向查询我们都知道,第二参数查找区域,查找...

    【一】VLOOKUP函数 

    169ad1799e4d0147fe2233295e20156c.png

    (1)Lookup_value

      查找值

    (2)Table_array

      查找区域,查找值必须在首列

    (3)Col_index_num

      结果所在列

    (4)Range_lookup

      0/FALSE,精确匹配

      1/TRUE,模糊匹配

    例1:反向查询

    我们都知道,第二参数查找区域,查找值必须在首列!但如下图所示,想要用红框姓名查找,来匹配出工号。查找值不在首列,那怎么框选查找区域呢?

    2eab5cb154e8199f6ea2ffbfe0229340.png

    :用IF函数{1,0}

    1. Table_array查找区域。要使框选的区域变成姓名和工号两列。

      70b4b4e4c7aab59e24d88f0810635002.png

      a4dedc52802a278874dd3fbcb4f4ff41.png

    2. 就要用到IF函数,我们首先要知道在IF里,所有非0的数字代表TRUE,0代表FALSE。

    3. {1,0} 是一个常量数组,代表一行两列。

      38d7745615c0bb4a4dcbd95c7f78144e.png

    4. =IF({1,0},$B$2:$B$7,$A$2:$A$7)

      1代表TRUE,返回红框,0代表FALSE,返回蓝框。

      0ad3fe7b9625d5031222e0acea4145ec.png

    5. 这个公式把红框和蓝框的区域合并框选起来。红框在前,蓝框在后。50c2232a0406a917564b3aded34d10d9.png

      8ac75c0381a5c82fee8fadf6a4f3674e.png

      9e5c6b8887673fa6b2ef990f0fe585df.png

    6. 所以第二参数Table_array,我们就用IF框选到了红框在前,蓝框在后的区域。结果在第二列,写2。

      196c3c828cb31d3b21e637d56d86601f.png

    7. 得出结果。=VLOOKUP($E$3,IF({1,0},$B$2:$B$7,$A$2:$A$7),2,0)

      88b6662545db76a3d286023a860b3a83.png

    做2:CHOOSE函数

    1. 或者第二参数Table_array,查找值区域用CHOOSE来做

    2. choose1是红框,choose2是蓝框区域。也是用数组,但是这里不能用0,因为CHOOSE没有选项0,只有选项1,2,3.......所以只能用{1,2}

      ff753c586c77a2d364675a12457537a4.png

    3. =VLOOKUP($E$3,CHOOSE({1,2},$B$2:$B$7,$A$2:$A$7),2,0)

      得出结果

      2fb68648deb3277bbfee1ecf55303a35.png


    OVER~

    展开全文
  • 函数Vlookup是日常工作中常见的函数。它的本职工作是帮助你查询(返回)所需要的一个或者多个值。【注意事项与适用范围】以单靠Vlookup函数为例,对数据区域有一定的要求1.数据区域内不能出现错误值或者空值2.数据区域...

    函数Vlookup是日常工作中常见的函数。

    它的本职工作是帮助你查询(返回)所需要的一个或者多个值。

    【注意事项与适用范围】

    以单靠Vlookup函数为例,对数据区域有一定的要求

    1.数据区域内不能出现错误值或者空值

    2.数据区域内不能用合并同类项

    3.目的数值所在列必须是在查找值所在列的右边

    4.查找值与数据区域的值格式要一致,数值对应数值,文本对文本

    如下图所示:

    序号作为查询值的数据格式是文本,而在数据区域里是数值,两种不一样。因此返回值部门(错误)中显示#N/A。

    需要更改的地方在第一个参数,将文本格式*1就会变成数值格式,如部门(正确)返回“采购”。静态显示https://www.zhihu.com/video/962011867967827968

    【两种返回】

    1.精确返回(一一匹配)-False

    2.模糊返回(区间返回匹配)-True

    【与函数搭配】

    1.Iferror函数

    思路含义:查找值为row(A1),亦即是1,2,3,4,... 通过逐项比对找到如图中第一列(作为辅助列)的数字,然后通过数字返回班级。辅助列的公式:A2=A1+B2。因为数字从1开始数,直到找到数字3,则已经走过3次,返回所在列的数班级也同样走了3次,故重复了3次旋风。Iferror函数意思是,如果公式内部出现错误值,则可以通过设立一个值去代替这个错误值。一般用空值代替,亦即是“”。公式:Iferror(vlookup(row(A1),A3:C8,3),"")

    首先先写上辅助列,辅助列的公式可以用两种:

    1. Countif函数 =H49&COUNTIF(H$49:H49,H49)

    2. =(H$49=$J$50)+A1

    方法2的好处在于,当数据量很多的时候,公式的运算会更高效而且占工作簿大小。

    方法2的思路在于,如果你的目标值和我的查找值是一致的,返回True,再加上一个空值,比如说A1, 则1+0=1 。反之,如果与我的查找值不一致的,返回False,则0+0=0 。然后接着找下一行。因此要注意查找值J50一定要用绝对引用,目标值H$49(最好要)锁定行号H。公式:IFERROR(VLOOKUP($J$50&ROW(A1),$D$48:$F$56,3,FALSE),"")补充优化辅助列2

    2.Match函数

    Match返回的数值是对应Vlookup函数的第三个参数,返回列数。如果一个表格的列数很多(超过10行以上的),倘若还需要再从第一列开始数到目标值所在的列,那效率是偏低的。

    和Match函数搭配的真正意义在于:在数据区域增加列数,发生变化的时候,也能一步到位地准确返回坐在列的数字。效率会加倍提升。公式:VLOOKUP($I$34,$E$33:$G$40,MATCH(K33,$E$32:$G$32,0),FALSE)

    3.Choose函数(重点/难点)

    Choose函数的作用是从参数列表中选择并返回一个值。

    举个简单例子:=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10)),Choose的数字是Index_Num,数字参数,接着后面可以接上不同的值。例子中Choose函数的数字参数是2,亦即返回第二个值(B1:B10)。因此,整个例子的实际运算:=SUM(B1:B10),对B1到B10单元格求和。

    公式:VLOOKUP(I7,CHOOSE({1,2},F4:F12,E4:E12),2,FALSE),在数字参数上引用了数组的知识。简单地说,用CHOOSE函数重新构建出一个新的、看不见的数据表。这个表完全符合VLookup函数的适用范围,亦即查询值一定要在返回值的左边。

    另外,CHOOSE函数中{1,2},不需一定是1和2,也可以任意大于零,相连的两个数,比如:0和1,但在后面返回所在列的时候,就要返回后面的数字。公式:VLOOKUP(I7,CHOOSE({1,2},F4:F12,E4:E12),2,FALSE)

    4.IF函数(重点/难点)

    首先看Vlookup的第一个参数——查询值。这是一个多个条件用和字符串&连接起来的一个组合。如下图所示,查询值为:(J20&I20)销售代表。IF函数也运用了数组知识,相当于在上个例子中的CHOOSE函数,重新构建出一个新的表格,表格的第一列标题就叫做部门职务,第二列就是自己设定好需要返回的列“姓名”。所以数据区域的第一列也跟查询值一样用字符串&连接起来。

    难点在于{1,0},还有最后公式外面的{}。要了解为什么这么写,我在此先从IF的基本用法讲起。先举个例子:

    IF(A1>=0,"对的","错的")

    这公式不难理解,如果条件成立,A1单元格的值确实大于等于0,则会返回第一个值("对的"),条件不成立就返回第二个值("错的")

    A1>=0(条件表达式)的结果就两样:A1的值>=0时,结果为TRUE,否则结果为FALSE,而在IF结构中,所有非0的数字都等同于TRUE,而0相当于FALSE。

    由此,下面两个公式结果也不难理解了。

    =IF(1,"对的","错的")的结果是“对的”

    =IF(0,"对的","错的")的结果是“错的

    IF不仅可以返回一个值,也可以返回一个区域引用。

    所以,下面的公式也顺应地好理解了:

    =IF({1,0},B2:B5,A2:A5)

    作为数组时,会分别进行计算。先用1作为参数判断,会返回B2:B5,然后用0作为参数判断,又返回一个结果A2:A5。两个结果会重新组合成一个新的数组。

    亦即,B2:B5在第一列,A2:A5在第二列。

    最后返回到下图例子。因此,第一列就是F19:F26&G19:G26,第二列就是E19:E26。

    第二点,这是个数组公式的标识,通过按Ctrl+Shift+Enter这三个键加上。按这三个键时,光标要放在公式编辑栏的公式中任意位置,公式两端有{ }符号。

    值得注意的是:有时直接回车也不会报错,但会产生一个错误的返回值。需要留意。公式:{VLOOKUP(J20&I20,IF({1,0},F19:F26&G19:G26,E19:E26),2,FALSE)}

    【辅助搭配】

    数据有效性和条件格式

    通过调节序号下方的单元格,则可以返回姓名、部门以及职务。同时,在原表中用条件格式显示出来,清晰直观。这也是动态查询图表的基础。静态显示https://www.zhihu.com/video/962005821870284800

    【经典场景】

    快速录入(输入几个字母则返回多个对应的数据)

    以下由商店进货售卖表格为例,只需要输入你设定好的缩写则可一次性返回多个字段的参数,产品名称以及单价。在数量多、录入时间频率高的任务中,用Vlookup备份一个表格作为“子板”,效率会有所提升。静态显示https://www.zhihu.com/video/962010067806093312

    展开全文
  • 函数1部分学习了文本处理函数和信息反馈函数,2部分学习查找引用函数1部分链接:EXCEL实战技巧与数据分析(三)函数1 - 数据科学探路者的文章 - 知乎https://zhuanlan.zhihu.com/p/58029602三、查找引用函数1.Vlook...
  • 1、XLOOKUP基础语法在学习任何一个函数之前,需要了解这个函数的基础语法,从微软官方的帮助文档里找到了这个函数的参数语法,共计有5个参数,跟LOOKUP的参数非常接近,但是使用起来会更加简单了一些。其中第1~3个...
  • 前面讲的都是前向传播,已知输入层数据,计算出输出层结果。...2.定义反向查询函数 1.>定义反向激活函数。利用logit函数 self.inverse_activation_function = lambda x: spc.logit(x) 2.>...
  • 一般情况下,VLOOKUP函数只能从左向右查找。但如果需要从右向右查找,则需要把区域进行“乾坤大挪移”,把列的位置用数组互换一下。例:要求在如下图所示表中的姓名反查工号。公式:=VLOOKUP(A9,IF({1,0},B2:B5,A2:...
  • Vlookup函数是基本的数据查询函数,有时单条件的正向查找并不能满足我们的需求。这篇文章为朋友们分享Vlookup函数的三种偏门用法。一.Vlookup函数实现动态求和:1.动态效果图:2.操作方法:(1)在J2单元格通过数据...
  • 查询引用,用到最多的函数为Vlookup,但你真的会用吗?其实,Vlookup函数除了常规的查询引用外,还有多种使用技巧一、Vlookup函数:功能及语法结构。功能:在指定的数据范围内返回符合查询要求的值。语法:=Vlookup...
  • Vlookup函数功能强大,表面上看起来很简单,其实运用十分灵活。Vlookup函数是从左向右进行查找,并且找到的是满足条件的第一个值。昨天我们已经学习了Vlookup函数单条件的精确查找和模糊查找。今天就让我们来学习...
  • 在职场中,我们常使用Excel中的Vlookup函数来进行数据的查询引用。作为Excel中最重要的函数之一,Vlookup函数各种各样的用法,让我们在查询数据时得到极大的快捷和便利。<Vlookup函数>用途:用通俗的话就是...
  • VLOOKUP是EXCEL最核心的几个函数之一,但是大多数人对其只知道一点皮毛。具体要怎样用好vlookup,可并不是一个容易的事情。...1.基础单条件查询 这是VLOOKUP函数最基本的功能,可以通过函数匹配特定的数据。 举例...
  • 说起查询引用,99%的亲第一反应肯定是,Lookup、Vlookup、Index+Match等函数或组合函数,很少有人会想到用Dget,对,没错,就是Dget,这个数据库函数不仅可以实现“正向”查询、还可以轻松实现“反向查询和“条件...
  • MySQL使用内置函数来进行模糊搜索(locate()等) 常用的一共有4个方法,如下: 1. 使用locate()方法  1.1.普通用法:  SELECT `column` from `table` where locate('keyword', `condition`)>0 ...
  • Hello,大家好,vlookup函数相信大家都非常的熟悉,今天就跟大家分享4个vlookup函数的高阶用法,话不多说,让我们直接开始吧一、提取固定长度的数字如下图,我们想要提取工号,只需要将函数设置为:=VLOOKUP(0,{0,1}...
  • 在数据查询过程中我们都知道运用...使用过程中你会发现index+match组合函数反向数据查询及多条件综合查询的使用,运用起来会更加简单和方便,下面我们就来对比一下两类函数。一、vlookup与index+match反向数据查询...
  • Django中,filter()对象返回的是一个查询集QuerySet,可用于执行切片和遍历,可用于执行反向查询,与all()相似,只是all()查询全部对象,另一种查询函数是get(),get()只能获取唯一存在的对象,不存在对象或者是多个...
  • VLOOKUP 是很常用的查找...关于 index+match 组合函数的使用可以参见 Excel 如何查询 3 个以上条件?今天我们讲解 VLOOKUP 多条件反向查找的方式。案例:如下图所示,如何按照三门课的成绩,查找出姓名?解决方案 ...
  • 在数据查询过程中我们都知道运用...使用过程中你会发现index+match组合函数反向数据查询及多条件综合查询的使用,运用起来会更加简单和方便,下面我们就来对比一下两类函数。一、vlookup与index+match反向数据查询...
  • 仔细查找,我们就会发现,我们用VLOOKUP函数的时候,忽略了一点儿,就是函数中的查找值必须是被查找的数据表的第一列的内容才行,而且必须是向右查询,如果是两者的位置是相反的(如表2),就会出错。如表1表 1表 2...
  • 前言上几期,我们分享了LOOKUP家族中LOOKUP、VLOOKUP、HLOOKUP函数的使用,都是基于正向查询使用的,今天要给大家分享的这篇干货是Excel中三种可以实现反向查询的功能。正文反向查询在我们实际工作中也是必须会的一...
  • vlookup(找谁,在哪找,第几列,匹配模式)vlookup这个excel中最常用的函数,它总能帮我们找到最需要的信息,但有时候我们也...1,用if()的方式将查询区域组成新的数组,然后再进行查找:反向查询使用IF({1,0},B2:...
  • 上几期,我们分享了LOOKUP家族中LOOKUP、VLOOKUP、HLOOKUP函数的使用,都是基于正向查询使用的,今天要给大家分享的这篇干货是Excel中三种可以实现反向查询的功能。 正文 反向查询在我们实际工作中也是必须会的一种...
  • 说起查询引用,99%的亲第一反应肯定是,Lookup、Vlookup、Index+Match等函数或组合函数,很少有人会想到用Dget,对,没错,就是Dget,这个数据库函数不仅可以实现“正向”查询、还可以轻松实现“反向查询和“条件...
  • VLOOKUP和MATCH函数 INDEX和MATCH函数
  • vlookup配合if函数实现反向查询欢迎来到知了Excel函数教学 欢迎来到知了Excel函数教学 vlookup在excel函数中也算是一个大哥级别的函数了,功能非常强大。把vlookup用好可以大大提高我们的工作效率。 缺点就是只能从...
  • 我们都知道数据最简单的查询函数就是vlookup函数,但是这个函数在进行逆向查询的时候会变得非常鸡肋。今天我们就来学习三种Excel实用的向左查询方法。方法一:vlookup+if函数嵌套实现数据逆向查询案例说明:我们需要...
  • 2、反向查找 根据表二姓名,查找表一编号。但表一中编号列在姓名列之前,无法直接使用VLOOKUP。用INDEX+MATCH函数组合一招搞定。 3、交叉查找 根据表二费用、月份查找表一中金额。VLOOKUP+MATC...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 404
精华内容 161
关键字:

反向查询函数