前言
不管在Excel中,还是在BDP中,函数公式的运用,都会对我们的数据分析有很大帮助,之前我们讲了比Vlookup还好用的多表关联的操作,本文介绍6个超实用函数,解决你80%可能会遇到的问题
01 Concat函数
CONCAT:连接函数,可以输出2个字段连接后的值 示例:concat('abc','d') 返回值:abcd例如,在BDP中,有时我们的日期字段是只有年-月-日的形式,在进行日期筛选时,需要日期字段中有时-分-秒,才能准确筛选,这个时候,我们可以使用连接函数,concat([日期字段],'00:00:00') 在日期字段中轻松添加时分秒
02 Substr 函数
SUBSTR :截取函数,截取字段中指定位置、指定长度的部分 示例:substr([字段],起始位置,截取长度)
例:substr('abcde',2,3) 返回值:bcd
当起始位置是负数时,则倒序选取起始位置例如,字段A:01小王,可以通过截取函数将序号和名字分开
03 Ccoalesce函数
CCOALESCE:非空查找函数,返回参数中的第一个非空值或非空串;如果所有值都为NULL或空串,那么返回空串
示例:ccoalesce([字段A],0)
当字段A中存在空值时,对于数值字段的计算会有影响,将空值替换成0,可以用这个函数,当字段A不为空时,返回字段A,当字段A为空时,返回0
注:coalesce函数与之类似,区别是coalesce会返回空串,ccoalesce会跳过空串
【小tip】空值null 和空串的区别:空值—什么都没有,没有分配存储空间,无法参与计算;空串—已经分配了存储空间,但是没有存储东西,在计算字段中可以写作“”
04 Case when函数
CASE WHEN :条件判断函数,设置不同条件下返回不同的对应值
示例:case
when [城市]='北京' then '华北'
when [城市]='上海' then '华东'
else ‘华南’
end
当城市字段数据等于北京时,返回“华北”,等于上海时,返回“华东”,其他返回“华南”case when函数的使用类似于简单条件函数IF的嵌套使用
05 Count函数
COUNT:计数函数,统计该字段行的个数
示例:count和下面的sum函数都属于聚合函数,例如,我们在电商数据分析中,需要计算客单价,用订单金额,比上订单单数sum([订单金额])/count([订单编号])
06 Sum函数
SUM:求和函数,输出不同参数求和结果
示例:sum([字段A],[字段B]),返回字段A、B值之和
注:聚合函数使用常见问题:
(1)在做图时添加聚合函数比值—sum(a)/sum(b) 不能是sum(a)/b
(2)当想要求a/b比值的和时,要用sum(a)/sum(b),不能直接将a/b拖入数值
(3)公式本身不带聚合功能,如需聚合,则在公式外面包含聚合函数,如SUM(ROW_MAX([a],))
(4)如果新字段的公式外层有聚合函数,则该新字段适用于数值轴,不适用于维度轴
(5)如果新字段的公式外层没有聚合函数,则该新字段适用于维度轴,不适用于数值轴
在不同场景下,可以将不同函数叠加使用,根据自己的需求匹配不同的函数
|