数据合并、截取、分列

Avatar
admin

根据字段内的字符,将字段拆分成多列。

在 FineBI 中通过使用函数创建「新增列」或者仪表板新增「计算字段」实现字段的分列。

3.1 示例例如需要截取电话号码,示例在自助数据集中创建新字段进行分列,截取「电话」号码的最后八位构建新字段「电话号码」。

1)使用 Demo 数据「供应商信息表」制作自助数据集,选择字段「联系人姓名」和「电话」,如下图所示:

2)选择新增列,使用 RIGHT 函数,新增列「电话号码」截取电话号码的后八位,输入公式:RIGHT(电话,8),如下图所示:

3.2 更多公式更多分列公式见下表。

需求公式字符只在字段里出现一次截取固定位数的字符RIGHT、LEFT、MID

示例:RIGHT(电话,8)

取「字符前」的字段内容LEFT(字段名,FIND("字符",字段名)-1)

示例:LEFT(用户账号和密码,FIND(":",用户账号和密码)-1)

取「字符后」的字段内容RIGHT(字段名,LEN(字段名)-FIND("字符",字段名))

示例:RIGHT(用户账号和密码,LEN(用户账号和密码)-FIND(":",用户账号和密码))

去掉字段后固定数目的字符LEFT(字段名,LEN(字段名)-需要去掉的字符长度)

示例:

去掉字段前固定数目的字符RIGHT(字段,LEN(字段)-需要去掉的字符长度)

字符在字段中多次出现取字段中最后一次多次出现的字符后的内容INDEXOF(SPLIT(字段名,"_"),LEN(SPLIT(字段名,"_"))-1)

示例:INDEXOF(SPLIT(字段,"_"),LEN(SPLIT(字段,"_"))-1)

取字段中倒数第二次多次出现的字符后的内容INDEXOF(SPLIT(字段名,"_"),LEN(SPLIT(字段名,"_"))-2)

示例:INDEXOF(SPLIT(字段,"_"),LEN(SPLIT(字段,"_"))-2)

以此类推即可实现字段分列...在进行分列后可能需要将分开的多个字段合并在一列中,此时可以使用上下合并功能,详情参见:逆透视