finebi配置数据源(巧用字段类型转化)

FineBI:工具体验地址!

一、将文本型或数值型时间值转换为日期格式1. 概述1.1 问题描述

用户记录时间的格式多种多样,有些存储以文本字段或数值字段保存。有时需要将字符串或数值字段解析成日期字段。

1.2 解决思路

使用自助数据集新增列,添加「TODATE」函数或者「DATE」函数,将文本字段或数值字段转变成时间类型的字段。

2. 文本字段转换为日期类型字段

示例数据:文本字段.xlsx

1)示例进行转换的字段格式有「2020/05/22」、「2020-05-22」、「20200522」、「202005」,如下图所示:

注:上传后若字段识别成其他字段类型,可以手动修改为文本类型的字段,详细可参见 编辑基础表 2.3 节。

finebi配置数据源(巧用字段类型转化)(1)

2)新建自助数据集,勾选文本字段 1、2、3、4,如下图所示:

finebi配置数据源(巧用字段类型转化)(2)

3)添加「新增列」,输入公式TODATE(文本字段1)将文本字段 1 转变成日期字段,并为新增列命名,点击「确定」,如下图所示:

finebi配置数据源(巧用字段类型转化)(3)

注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。

同理,分别创建新增列并输入公式TODATE(文本字段2)、TODATE(文本字段3,"yyyyMMdd")、TODATE(文本字段4,"yyyyMM"),如下图所示:

finebi配置数据源(巧用字段类型转化)(4)

注:文本字段 4 只有年月,转成日期类型后默认为每月的 1 号。

TODATE 函数的详细用法请参见:TODATE 函数

3. 数值字段转换为日期类型字段

示例数据:数值字段.xlsx

示例进行转换的字段格式如下所示:

年月日

月份

A

20200522

2020

5

1,590,727,781,511

在 FineBI 中如下图所示:

finebi配置数据源(巧用字段类型转化)(5)

3.1 将单列的字段转化为日期字段

「年月日」字段需要使用 字段设置 先将其转化为文本字段,再使用一次「字段设置」将其转化为日期字段

「A」字段直接使用「字段设置」将其转化为日期字段,如下图所示:

finebi配置数据源(巧用字段类型转化)(6)

3.2 以多列保存的数值日期转为日期字段

用户有时会单独将年、月、日分多个字段保存,可以使用「DATE 函数」将多个字段处理成一个日期字段。DATE 函数的使用方法请参见:DATE 函数

本节以「年」和「月份」字段为例。

1)新建自助数据集,选中字段「F年」和「F月」,如下图所示:

finebi配置数据源(巧用字段类型转化)(7)

2)新增列「多列日期合并」,使用公式DATE(年,月份,22),如下图所示:

finebi配置数据源(巧用字段类型转化)(8)

二、展示对应于数字代码的字符1. 概述1.1 预期效果

有时用户需要展示「数值」字段对应的「文本」字符。例如将两列数值转换为数值对应的字符显示,并将两列数据拼接在一起,如下图所示:

finebi配置数据源(巧用字段类型转化)(9)

1.2 实现思路

使用自助数据集新增列,添加「char」函数。

同时使用「CONCATENATE」函数实现拼接功能。

2. 操作步骤

示例数据:char.xlsx

2.1 创建自助数据集

将示例数据上传至 FineBI ,如下图所示:

finebi配置数据源(巧用字段类型转化)(10)

添加自助数据集,选择「CHAR」数据集下的「数字1」、「数字2」字段,如下图所示:

finebi配置数据源(巧用字段类型转化)(11)

2.2 新增列

点击「 」,添加新增列,如下图所示:

finebi配置数据源(巧用字段类型转化)(12)

命名字段名称为「数字转字符」,输入函数CONCATENATE(CHAR(数字1),CHAR(数字2)),点击「确定」,如下图所示:

finebi配置数据源(巧用字段类型转化)(13)

注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。

三、字段类型转化1. 概述1.1 预期效果

有时用户需要将「文本」字段转换为「数值」字段类型,例如需要将「购买数量」文本字段转换为数值字段,转换后如下图所示:

注:直连版本,需升级到 5.1.10,否则不支持在新增列中进行字段类型转化

finebi配置数据源(巧用字段类型转化)(14)

1.2 实现思路

使用自助数据集新增列,修改字段类型即可。

2. 操作步骤2.1 创建自助数据集

添加自助数据集,选择对应数据集下的「合同类型」、「购买数量」文本字段,如下图所示:

finebi配置数据源(巧用字段类型转化)(15)

2.2 新增列

点击「 」,添加新增列,如下图所示:

finebi配置数据源(巧用字段类型转化)(16)

命名字段名称为「购买数量-数值」,选择「文本字段」下的「购买数量」字段,点击字段类型,选择「数值」,点击「确定」,如下图所示:

finebi配置数据源(巧用字段类型转化)(17)

注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。

四、年月日日期格式转换为年月1. 概述1.1 预期效果

转化年月日的日期格式,转化成年月,效果如下表所示:

日期格式

转化后

2020-02-02

202002

2020/02/02

2020-02-02 00:00:00

1.2 实现思路

1)在自助数据集中,添加需要转换的日期字段。

2)新增列中,添加 REPLACE 函数和 LEFT 函数的组合公式,获得年月格式。

2. 操作步骤

示例数据:使用 demo 数据中的「RFM 明细数据」。

2.1 新建自助数据集

在自助数据集中处理日期数据。点击「数据准备」在「业务包」下添加「自助数据集」。如下图所示:

finebi配置数据源(巧用字段类型转化)(18)

2.2 选字段

在新增的自助数据集中,添加样式数据下「RFM明细数据」表的「DATE」日期字段和其余字段。如下图所示:

finebi配置数据源(巧用字段类型转化)(19)

2.3 新增列

添加「新增列」,将「DATE」字段转换为年月格式。如下图所示:

finebi配置数据源(巧用字段类型转化)(20)

2.4 添加公式

1)新增列命名为「年月日期」,输入公式: REPLACE(LEFT(DATE,7),LEFT(DATE,5),LEFT(DATE,4))。完成点击「确定」。如下图所示:

注:公式中的「DATE」,需点击「时间字段」下的对应字段输入,不可通过其余方式输入。

公式说明如下表所示:

公式

说明

举例

详情

LEFT(DATE,7)

截取「DATE」字段的前 7 位字符

2010-02-17 00:00:00 截取后为 「2010-02」

LEFT():根据指定字符数返回字符串中的前几个字符

REPLACE(LEFT(DATE,7),LEFT(DATE,5),LEFT(DATE,4))

将「DATE」字段中前 7 位作为目标字符串,将该字符串的前 5 位字符,转换为前 4 位字符

在 2010-02-17 00:00:00 中截取「2010-02」,将 2010-02 中的「2010-」替换为「2010」,得到「201002」

REPLACE():根据选定的字符串,用其他文本来代替原始文本中的内容

finebi配置数据源(巧用字段类型转化)(21)

注:日期格式为 2020-02-02 或 2020/05/22 或 2020-02-02 00:00:00 都可以使用上述公式进行转换。

2)添加完公式后,命名自助数据集后,点击「保存」完成日期转换。效果如下图所示:

finebi配置数据源(巧用字段类型转化)(22)

3)「更新数据」后即可查看数据,如下图所示:

finebi配置数据源(巧用字段类型转化)(23)

3. 效果查看

年月日时分秒日期格式转化为年月后,效果如下图所示:

finebi配置数据源(巧用字段类型转化)(24)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页