历史版本5 :Map函数 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. Map函数的定义编辑
语法
Map(object, string, int, int)
其中四个参数依次为:索引值,数据集的名字,索引值所在列序号,返回值所在列序号。
后面两个参数也可以用列名代替。
功能
根据数据集的名字,找到对应的数据集,找到其中索引列的值为key所对应的返回值。
Map函数首先检索模板数据集,再检索服务器数据集。
2. Map函数的应用举例编辑
2.1 准备数据
新建工作薄,添加数据集,SQL语句为SELECT * FROM 供应商。
2.2 添加公式

MAP(A1, "ds1", "公司名称", "供应商ID")返回ds1数据集,“公司名称”列中值为A1那条记录中“供应商ID”列的值。
MAP(A1, "ds1", 2, 1)返回ds1数据集,第2列中值为A1那条记录中第1列的值。
MAP("妙生", "ds1", "公司名称", "供应商ID")返回ds1数据集,“公司名称”列中值为“妙生”那条记录中“供应商ID”列的值。
MAP("妙生", "ds1", 2, 1)返回ds1数据集,第2列中值为“妙生”那条记录中第1列的值。
2.3 保存与预览

3. Map函数的多参数编辑
默认参数只能取一个object参数,实际使用中会遇到需要多参数的情况。分享一下,抛砖引玉:
1.定义数据集时候可以把参数1、参数2、参数3、参数X连接到一起
SELECT A,B,C,参数1+参数2+参数3+参数X FROM 表
2.通过CONCATENATE函数将参数连接到一起,配合MAP共同使用
MAP(CONCATENATE(参数1,参数2,参数3,参数X), string, int, int)
4. Map函数取空值显示参数情况编辑
MAP函数取值时如果对应参数无数据,那么会默认返回参数本身,可以通过IF函数嵌套一下,屏蔽掉空值
IF(Map(object, string, int, int)!=object,Map(object, string, int, int),"")