olap工具FineBI中的日期和时间函数
帆软bi公式
帆软bi公式帆软 BI 公式在数据分析和可视化中可是有着相当重要的作用呢!咱先来说说什么是帆软 BI 公式。
简单来讲,它就像是一把神奇的钥匙,可以帮助我们打开数据背后隐藏的秘密之门。
比如说,我们想要计算某个数据列的平均值、总和,或者找出最大值、最小值,这时候 BI 公式就派上用场啦。
我记得有一次,我们公司在做一个销售数据的分析。
销售团队给了我们一堆密密麻麻的数据,看得人眼花缭乱。
这时候,我就用上了帆软 BI 公式。
当时我想计算出不同地区销售业绩的总和,然后对比一下哪个地区的销售表现最为出色。
我熟练地打开帆软BI 软件,输入相关的公式,眼睛紧紧盯着屏幕,心里还挺紧张,生怕出错。
随着回车键一敲,结果瞬间就出来了。
那一刻,真有一种成就感,就好像自己是个数据魔法师,轻轻一挥魔杖,复杂的数据就变得清晰明了。
帆软 BI 公式里的函数种类可多啦,像数学函数、文本函数、日期函数等等。
比如说数学函数中的 SUM 函数,能把一列数据加起来,算出总和。
还有 AVG 函数,可以求出平均值,让我们快速了解数据的集中趋势。
文本函数也很实用。
比如 CONCATENATE 函数,可以把几个文本串连接在一起。
假设我们有客户的名字和姓氏分别在两列,用这个函数就能轻松把它们合并成一个完整的名字。
日期函数在处理时间相关的数据时特别好用。
比如说,要找出某个时间段内的销售数据,就可以用到 DATE 函数来设定时间范围。
使用帆软 BI 公式的时候,还得注意一些小细节。
比如说公式的语法要正确,参数的类型和数量也要匹配,不然得出的结果可就不准确啦。
总之,帆软 BI 公式就像是我们在数据海洋中航行的指南针,能够帮助我们准确地找到方向,挖掘出有价值的信息。
只要我们熟练掌握它,就能在数据分析的道路上越走越顺,让数据为我们的工作和决策提供有力的支持!希望通过我的这些分享,能让您对帆软 BI 公式有更深入的了解和认识,在今后的数据分析中更加得心应手!。
finebi6公式用法
finebi6公式用法FineBI6是一款强大的数据分析和可视化工具,它提供了丰富的公式用法,可以帮助用户快速进行数据处理和计算。
下面是一些FineBI6公式的常见用法介绍:1. SUM函数:SUM函数用于对指定范围内的数字求和。
例如,SUM(A1:A10)表示将A1到A10单元格中的数字相加。
这在处理销售数据或预算数据时非常实用。
2. IF函数:IF函数根据指定的条件判断是否满足,并根据条件的真假返回不同的值。
例如,IF(A1>10, "高", "低")表示当A1大于10时返回"高",否则返回"低"。
这在根据条件生成报表或计算分级数据时应用广泛。
3. COUNT函数:COUNT函数用于计算指定范围内的非空单元格数量。
例如,COUNT(A1:A10)表示计算A1到A10单元格中非空单元格的数量。
这对于统计数据个数或过滤数据时非常有用。
4. VLOOKUP函数:VLOOKUP函数用于在一个区域查找某个值,并返回指定区域中对应的值。
例如,VLOOKUP(A1, B1:C10, 2, False)表示在B1到C10区域中查找A1的值,并返回对应行中第二列的值。
这在数据匹配或数据关联时非常有用。
5. CONCATENATE函数:CONCATENATE函数用于将多个文本字符串合并成一个字符串。
例如,CONCATENATE("Hello", " ", "World")将返回"Hello World"。
这对于拼接字符串或生成自定义文本时非常实用。
以上是FineBI6公式的一些常见用法,当然还有很多其他的函数可以选择。
掌握这些公式用法可以帮助您更高效地处理和分析数据,提升工作效率。
希望以上内容能对您有所帮助!。
Finereport日期的显示技巧
Finereport日期的显示技巧1.转化日期通过date(year,month,day)进行转化日期。
在单元格中输入:=date(2011,1,10),其返回值为2011-01-10。
若月份大于12将从年的一月份开始往上累加,如在单元格中输入:=date(2011,13,10),其返回值为2012-01-10。
注:日期同理,若超过最大天数,会从月的一号开始向上累加。
2. 2当前日期(年月日)today()即获取当前日期。
在单元格中输入=today(),若系统日期是2011年11月11号,则返回值为2011-11-11。
3. 3当前时间(时分秒)now()即获取当前日期与时间。
在单元格中输入=now(),返回值类型为日期,yyyy-MM-dd hh:mm:ss;如:now(),格式:常规,返回的值2012-06-20 14:55:57。
4. 4获取日期的年月日分别通过year(),month(),day()这三个函数来获取日期的年月日。
获取年份:在单元格中输入=year("2011-11-11"),返回值为2011。
获取月份:在单元格中输入=month("2011-11-11"),返回值为11。
获取日期:在单元格中输入=day("2011-11-11"),返回值为11。
5. 5将日期格式化可以使用todate()函数将任何日期形式的数据转化为日期型,或者使用format()函数可以转化成任何日期形式的数据。
6. 6将日期格式的字符串转化成日期型todate()可以将任何日期形式的数据转化成日期型即:yyyy-MM-dd型数据。
在单元格中输入=todate("2011/11/11"),返回值为2011-11-11。
在单元格中输入=todate("2/15/11","MM/dd/yy"),返回值为2011-02-15。
finebi计数函数
finebi计数函数
**一、FineBI计数函数简介**
FineBI是一款商业智能分析工具,其内置了丰富的函数,可以帮助用户进行数据分析。
计数函数是其中之一,主要用于对数据进行统计计数。
**二、FineBI计数函数的用途**
1.统计某一字段的频次:可以用于分析数据中不同类别的发生次数,以便了解数据的分布情况。
2.计算满足条件的记录数:可以用于筛选出符合特定条件的数据记录,并计算其数量。
3.汇总计算:可以将多个字段的数据进行关联计算,得出满足条件的记录数。
**三、FineBI计数函数的语法与参数**
FineBI计数函数的语法如下:
```
COUNT(字段名1, 字段名2, ...)
```
参数说明:
- 字段名1、字段名2等:需要统计的字段名,可以多个。
**四、实例演示**
假设我们有一张名为“销售记录”的表格,包含以下字段:产品编号、产品名称、销售数量、销售金额。
现在我们想要统计每个产品的销售数量和销售
金额的总和。
我们可以使用如下公式:
```
COUNT(产品编号) = 销售数量计数
SUM(销售金额) = 销售金额总和
```
**五、总结与建议**
FineBI计数函数是一个实用的工具,可以帮助我们对数据进行简单的统计分析。
在实际应用中,我们可以根据需求灵活运用计数函数,以便更好地理解数据。
同时,需要注意的是,FineBI计数函数仅支持字段类型的数据,若要统计的数据不属于字段类型,需要先进行数据类型转换。
详解免费 BI工具FineBI时间及数值类指标
详解免费BI工具FineBI时间及数值类指标1. 描述时间类指标,顾名思义,就是指数据字段的类型为时间类型的指标,将BIAnalytics 即时分析的行表头修改为合同签约时间,点击字段后面的下拉按钮,可以看到该字段指标的所有配置,如下图2. 时间显示格式时间类型指标的显示格式包括日期、年、季度、月和星期,如果显示格式选择为年,那么合同签约时间则会显示为年份,后面的数据根据年份分组,如下图:3. 排序方式时间类型指标的排序方式包括降序和升序,升序和降序均可根据自身和数值区域中的数值类型指标进行排序,默认为根据自身升序排序,下面我们将其修改为根据自身降序排序,如下图:4. 过滤设置指标的过滤将在指标条件过滤中详细介绍,这里不再赘述。
5. 指标与维度关联指标和维度的关联与文本类型指标的使用方式一致,这里不再赘述。
如果我们遇到类似这样的需求:按照每月1-7号算第一周,8-15算第二周这样来分组,算出每个月几周的销售额;方案:先用公式列增加一列,将时间字段中的日期挑出来,然后再用数值的自定义分组就可以了。
11.1.3 数值类型指标1. 描述数值类型指标是指字段类型为数值型的字段,数值类型指标在dashboard组件中只能在数值区域进行绑定,以BIAnalytics即时分析中的数值指标为例详细讲解。
在BIAnalytics即时分析的编辑界面中,点击表格组件右上角的按钮进入组件配置界面,点击数值区域数据框下面的折扣字段的下拉按钮,可以看到数值类型指标的所有配置内容,如下图:2. 汇总方式数值类型指标的汇总方式是指对数据进行计算的公式类型,包括求和、求平均、求最大值和求最小值四个汇总方式,默认为求和。
如下图,我们将折扣字段的汇总方式修改为求平均,那么,在显示该数据时,不再是求和之后的数值了,而是平均值:3. 图表类型图表类型切换是指切换该数值类型指标的图表显示方式,这里特指在坐标轴图组件中进行类型切换,包括柱形图、堆积柱形图、折线图和面积图,如下图:数值指标的图表类型切换一般适用于组合图的制作。
帆软时间参数
帆软时间参数
帆软报表中常用的时间参数有以下几种:
1.时间戳参数:以毫秒为单位记录时间的数值型参数,可用于具体的时间点选择,如某一天的开始时间戳和结束时间戳。
2.年月日型参数:以年、月、日为单位的日期型参数,如2019年4月15日。
3.年度参数:以年为单位的数字型参数,如2019年。
4.月度参数:以月为单位的数字型参数,如4月。
5.季度参数:以季度为单位的数字型参数,如第二季度。
6.周度参数:以周为单位的数字型参数,如第12周。
7.时间段参数:以开始时间点和结束时间点为依据的时间区间参数,如2019年第二季度。
报表软件FineReport各类函数大全
报表软件FineReport各类函数大全常用函数 (2)报表函数 (4)数组函数 (6)数学和三角函数 (8)文本函数 (16)日期和时间函数 (22)逻辑函数 (28)简单的自定义函数 (29)常用函数1. SUMSUM(number1,number2,…):求一个指定单元格区域中所有数字之和。
Number1,number2,…:1到30个参数或指定单元格区域中所有数字。
备注:函数将直接键入参数中的数值、逻辑值及文本表达式计算在内。
若参数是数组或引用,则只对数组或单元格引用的数值进行计算。
示例:SUM(70,80)等于150。
SUM("70",80,TRUE)等于151,逻辑值"TRUE"作为1来计算;"FALSE"作为0计算;文本"70"作为70来计算。
2. COUNTCOUNT(value1,value2,…):计算数组或数据区域中所含数字项的个数。
Value1,value2,…:可包含任何类型数据的参数,但此函数只将数字类型的数据计算在内。
备注:数字、日期或以文字代表的数字参数将被计算在内;但无法转换成数字的错误值或文本值参数将忽略不计。
如果数组或引用参数中包含可解析文本值、逻辑值、零值或空白单元格,这些值都将参与计算,而不可解析的文本值忽略不计。
3. AVERAGEAVERAGE(number1,number2,…):返回指定数据的平均值。
Number1,number2…:用于计算平均值的参数。
备注:参数必须是数字,或是含有数字的名称,数组或引用。
如果数组或引用参数中含有文字,逻辑值,或空白单元格,这些值将被忽略;但是,单元格中的零值则参与计算。
示例:如果A1:A6被命名为“ages”,分别等于10,23,14,24,33及25,则:AVERAGE(A1:A6)等于21.5,AVERAGE(ages)等于21.5。
Oracle BIEE中的时间维与时间轴函数2
Oracle BIEE中的时间维与时间轴函数累计、同比、环比是BI项目中常用的分析方法。
Oracle BIEE提供的解决方法是时间轴函数。
Oracle BIEE现在支持两个时间轴函数:Ago:从当前时间起回溯用户指定的n个时间段,返回当时的度量值;ToDate:从用户指定时间段的起点开始,到当前时间为止,计算度量值的累计值。
使用时间轴函数的前提条件是在逻辑模型内定义了时间维。
上面两个函数说明中的“时间段”实际上指的是时间维的层级(Level)。
例如使用Ago函数定义“去年同期值”,指定的时间段为“年”这一层级,指定的回溯周期为1,表示得到去年的值。
再比如使用ToDate函数定义“本年累计值”,指定的时间段也是“年”这一层级,表示从年的起点(年初)开始到当前时间为止,求度量值的累计值。
注:1.如果某个物理表的字段被映射到了时间逻辑表上,那么这个物理表中的字段不能再映射到其他逻辑表中。
2.作为时间逻辑表的数据源的物理表,只允许与物理事实表关联。
且关联只能基于外键,而不能基于复杂连接。
3.时间维与普通维度有两处不同。
首先,双击维度“Date”节点,在“Dimension”对话框中需要选中“Time Dimension”选项,以表明此维度对象为时间维度。
其次,时间维度中需要定义时间序列键(Chronological Key)。
时间序列键的作用是表明时间维中具有一组单调增加的时间序列值。
定义时间序列时存在以下原则:时间维中,至少一个层级上应定义有时间序列键。
物理存储的最细时间粒度上必须定义时间序列键。
时间维的同一层级上可以建立多个时间序列键,但只有第一个时间序列键有效。
定义好时间维后,就可以在逻辑事实表中定义使用时间轴函数的逻辑列了。
ago(<measure_expression>, <model_id>.<dimension_id>.<level_id>,<integer_literal>):第一个参数是逻辑字段用于时间轴运算的度量值;第二个参数是逻辑模型时间维的层级,表明回溯的时间单位;第三个参数表示回溯的时间周期,1则为回溯一年,即去年。
FineReport使用函数大全
文本函数CHARCHAR(number):根据指定数字返回对应的字符。
CHAR函数可将计算机其他类型的数字代码转换为字符。
Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535)。
示例:CHAR(88)等于“X”。
CHAR(45)等于“-”。
CODECODE(text):计算文本串中第一个字符的数字代码。
返回的代码对应于计算机使用的字符集。
Text:需要计算第一个字符代码的文本或单元格引用。
示例:CODE("S")等于83。
CODE("Spreadsheet")等于83。
CONCATENATECONCATENATE(text1,text2,...):将数个字符串合并成一个字符串。
Text1,text2,...:需要合并成单个文本的文本项,可以是字符,数字或是单元格引用。
备注:也可以用“&”来代替CONCATENATE函数对文本项进行合并。
示例:CONCATENATE("Average ","Price")等于“Average Price”,这相当于“Average”&“ ”&“Price”。
CONCATENATE("1","2")等于12。
ENDWITHENDWITH(str1,str2):判断字符串str1是否以str2结束。
备注: str1和str2都是大小写敏感的。
示例:ENDWITH("FineReport","Report")等于trueENNUMBER。
ENDWITH("FineReport","Fine")等于false。
ENDWITH("FineReport","report"ENNUMBERENNUMBER(value):将给定的BigDecimal类型的数字转化成英文金额的字符串。
FineBI作为大数据处理软件其中的日期和时间函数
FineBI作为大数据处理软件其中的日期和时间函数凡函数中以日期作为参数因子的,其中日期的形式都必须是yyyy/mm/dd。
而且必须用英文环境下双引号(" ")引用。
1. DATEDATE(year,month,day):返回一个表示某一特定日期的系列数。
Year:代表年,可为一到四位数。
Month:代表月份。
若1<=month<= 12,则函数把参数值作为月。
若month>12,则函数从年的一月份开始往上累加。
例如:DATE(2000,25,2)等于2002年1月2日的系列数。
Day:代表日。
若日期小于等于某指定月的天数,则函数将此参数值作为日。
若日期大于某指定月的天数,则函数从指定月份的第一天开始往上累加。
若日期大于两个或多个月的总天数,则函数把减去两个月或多个月的余数加到第三或第四个月上,依此类推。
如:DATE(2000,3,35)等于2000年4月4日的系列数。
示例:DATE(1978, 9, 19)等于1978年9月19日。
DATE(1211, 12, 1)等于1211年12月1日。
其中月和日为1到9之间的数字时,不需要在前面加上0而直接写数字如DATE(2011, 2, 1)即可。
2. DATEDELTADATEDELTA(date, deltadays):返回一个日期——date后deltadays的日期。
deltaDays可以为正值,负值,零。
示例:DATEDELTA("2008-08-08", -10)等于2008-07-29。
DATEDELTA("2008-08-08", 10)等于2008-08-18。
3. DATEDIFDATEDIF(start_date,end_date,unit):返回两个指定日期间的天数、月数或年数。
Start_date:代表所指定时间段的初始日期。
End_date:代表所指定时间段的终止日期。
finereport 数据集函数
finereport 数据集函数摘要:一、FineReport 简介二、数据集函数的作用三、常用数据集函数介绍1.数据库查询函数2.聚合函数3.日期和时间函数4.数学和三角函数5.文本处理函数6.逻辑函数四、数据集函数在FineReport 中的应用实例五、总结正文:FineReport 是一款非常强大的企业级报表工具,广泛应用于各种业务场景。
数据集函数是FineReport 的重要组成部分,用于处理和分析报表数据,帮助用户更好地理解和呈现业务数据。
数据集函数的作用主要体现在以下几个方面:1.对数据进行筛选、排序、分组等操作,满足不同报表需求。
2.对数据进行统计、计算,生成新的字段或数据。
3.对数据进行格式化,如转换日期格式、货币格式等。
4.对数据进行条件判断,实现复杂的业务逻辑处理。
下面我们来详细了解一下FineReport 中的常用数据集函数:1.数据库查询函数:主要包括SELECT、COUNT、SUM、MAX、MIN 等,用于从数据库中查询和统计数据。
2.聚合函数:如AVG、STDEV、VAR 等,用于计算数据的平均值、标准偏差等统计量。
3.日期和时间函数:如DATE、DATETIME、TIMESTAMP、YEAR、MONTH 等,用于处理日期和时间类型的数据。
4.数学和三角函数:如SIN、COS、TAN、PI 等,用于处理数学和三角相关的计算。
5.文本处理函数:如LEN、LEFT、RIGHT、SUBSTR 等,用于处理字符串类型的数据。
6.逻辑函数:如IF、IIF、CASE 等,用于实现复杂的条件判断。
在FineReport 中,数据集函数可以广泛应用于各种报表模板,如表格报表、图表报表、交叉表等。
通过灵活使用数据集函数,用户可以轻松地实现对报表数据的处理和分析,从而更好地呈现业务数据。
总之,FineReport 的数据集函数为用户提供了丰富的数据处理能力,使得报表制作变得更加简单、高效。
免费bi分析工具FineBI的时间类控件如何使用
免费bi分析工具FineBI的时间类控件如何使用1. 描述时间类控件是控件类型中的一种,显然,时间类控件是用于过滤时间的控件,数据来源只能是时间类型数据,根据时间的形式不同,时间类控件可分为五种:年份控件、年月控件、年季度控件、日期控件以及日期区间控件,如下图:根据想要过滤的参数样式选择不同类型,比如说想要查看不同年份的数据,那么在选择时间控件时就需要选择年份控件。
注:时间控件不绑定字段也可以手动输入数据进行过滤,无需任何额外的设置,直接拖拽字段即可。
2. 时间类控件过滤多个维度时间类控件可以绑定多个维度,即可以过滤多个维度的数据,主要用于筛选多个窗体中的结果。
2.1 新增表格组件以测试为例,点击前面的编辑按钮,进入分析编辑界面,为该分析添加一个表格组件,设置表格的横向表头为注册时间,值为合同金额,注册时间的分组依据为年,同时将图表组件合同详细信息的合同签约时间的分组依据也改为年,如下图:2.2 时间类控件拖拽一个年份控件至页面中,如下图:点击右上角的按钮进入组件配置界面,将合同信息表中的注册时间以及合同签约时间字段拖曳进来,,如下图:注:时间控件绑定2个维度,如果这两个字段之间有关联,那么dashboard组件中数据过滤的时候,需要同时过滤2个字段所选的时间,即求交集,如果没有任何关联,只需要过滤相应字段即可。
2.3 效果查看如下图:10.5.2 同比环比示例1. 描述上一节我们简单介绍了时间类空间的简单用法,在某些场合,我们需要求同比环比、年累计等,这种情况下,我们可以用日期控件来实现。
2. 示例任意选择一个时间,展示出各公司当月回款目标、当月回款金额、当月回款完成比、上月回款金额、回款环比、年度累计回款额、上年累计回款额、回款同期比。
如下图:3. 添加组件在dashboard界面添加一个日期控件、两个树控件(分别命名为公司、项目)、一个查询按钮和一个重置按钮和一个统计组件(命名为回款汇总表)。
商务智能系统FineBI文本类型时间字段的问题解决方案
商务智能系统FineBI文本类型时间字段的问题解决方案1. 描述通过时间类控件章节,我们知道可以直接通过该控件对时间类型的数据进行过滤,但是,实际上,数据库中存储的与时间相关的数据的数据类型不一定是时间类型的,很多时候会以文本类型存储到数据库中,此时就只能使用文本类型控件来进行过滤,导致数据显示性能差,使用不如时间类控件方便,那么如何才能使文本类型的时间数据使用FineBI的时间类控件进行过滤呢?2. 实现思路通过新增公式列,在原有的文本类型时间数据的基础上使用公式将其转换为时间类型字段,然后使用该转换后的字段进行数据分析。
3. 数据准备登录FineBI即时分析系统页面http://localhost:37799/WebReport/ReportServer?op=fs,点击数据配置>业务包管理>BiDemo业务包,添加一个数据表,如下图数据表的添加步骤详细请查看数据表管理。
4. 新增公式列签约事实表数据表中有LOAD_DATE,AUDITINGDATE字段,该字段里面显示的是时间数据,但其数据类型为文本类型,如下图:下面我们将该字段类型转换为时间类型。
在右侧的ETL设置面板中,点击表名称按钮,选择对该表-新增公式列,如下图:4.1 公式转换在公式列管理界面,点击添加公式列按钮,在弹出的公式转换窗口中输入新增公式列名称,选择数据类型,并输入公式转换的公式,如下图:注:FORMAT(object,format) : 返回object的format格式。
object 需要被格式化对象,可以是String,数字,Object(常用的有Date, Time)。
format 格式化的样式示例: FORMAT(1234.5, "#,##0.00") => 1234.50FORMAT(1234.5, "#,##0") => 1234FORMAT(1234.5, "¥#,##0.00") => ¥1234.50FORMAT(1.5, "0%") => 150%FORMAT(1.5, "0.000%") => 150.000%FORMAT(6789, "##0.0E0") => 6.789E3FORMAT(6789, "0.00E00") => 6.79E03FORMAT(date(2007,1,1), "EEEEE, MMMMM dd, yyyy") => 星期一,一月01,2007FORMAT(date(2007,1,13), "MM/dd/yyyy") => 01/13/2007FORMAT(date(2007,1,13), "M-d-yy") => 1-13-07FORMAT(time(16,23,56), "h:mm:ss a") => 4:23:56 下午点击确定,重命名表名称为签约事实表_formula。
bi智能分析系统FineBI中的日期和时间函数
DATETONUMBER(date):返回自 1970 年 1 月 1 日 00:00:00 GMT 经过的毫秒数。 示例: DATETONUMBER("2008-08-08")等于 1218124800000。
10. DAY
DAY:(serial_number)返回日期中的日。DAY 是介于 1 和 31 之间的一个数。 Serial_number:含有所求的年的日期。 备注: FineBI 将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期 进行数值式计算。
6. DATEINWEEK
DATEINWEEK(date, number):函数返回在某一个星期当中第几天的日期。 示例: dateInWeek("2008-08-28", 2)等于 2008-08-26。
7. DATEINYEAR
DATEINYEAR(date, number):函数返回在某一年当中第几天的日期。
21. SECOND
SECOND(s erial_number):返回某一指定时间的秒数,其值是介于 0 与 59 之间的一 个整数。
Serial_number:包含所求秒数的时间。 示例: SECOND("15:36:25")等于 25。 SECOND("15:36:25", "HH:mm:ss")等于 25。
12. DAYSOFMONTH
DAYSOFMONTH(date):返回从 1900 年 1 月后某年某月包含的天数。 示例: DAYSOFMONTH("1900-02-01")等于 28。 DAYSOFMONTH("2008/04/04")等于 30
fine bi 中返回年月的函数
fine bi 中返回年月的函数
在FineBI中,可以使用内置的日期函数来提取日期中的年月信息。
具体来说,可以使用`YEAR`和`MONTH`函数来分别提取年份和月份。
以下是使用这两个函数的示例:
```sql
SELECT YEAR(date_column) AS 年份, MONTH(date_column) AS 月份FROM your_table;
```
在上面的示例中,`date_column`是包含日期的列名,`your_table`是表名。
通过使用`YEAR`函数,将返回日期列中的年份信息,使用`MONTH`函数将
返回日期列中的月份信息。
请注意,上述示例中的语法适用于FineBI的SQL查询功能。
如果你使用的是FineBI的其他功能或工具,可能需要查阅相关文档或联系FineBI的技术支持以获取更准确的语法和用法。
OracleBIEE中的时间维与时间轴函数
Oracle BIEE 中的时间维与时间轴函数累计、同比、环比是 BI 项目中常用的分析方法。
本文讲述如何利用 Oracle BIEE 的时间维(Time Dimension)及时间轴函数(Time Series Conversion Function)实现累计、同比、环比计算。
本文使用的示例数据可以通过此链接下载:/。
如果你不了解如何创建 Oracle BIEE 资料库,请参考之前的文章Hello BIEE。
目录∙时间轴函数概述∙创建时间维的准备工作∙创建时间维∙使用时间轴函数定义度量值∙查询∙参考时间轴函数概述累计、同比、环比是 BI 项目中常用的分析方法。
如果采用关系型数据库,直接通过 SQL 语句进行这样的计算是比较麻烦的。
Oracle BIEE 提供的解决方法是时间轴函数。
时间轴函数是位于逻辑模型层内的函数,使用时间轴函数能够定义出“去年同期值”或“本年累计值”之类的与时间相关的计算字段。
Oracle BIEE 现在支持两个时间轴函数:∙Ago:从当前时间起回溯用户指定的 n 个时间段,返回当时的度量值。
∙ToDate:从用户指定时间段的起点开始,到当前时间为止,计算度量值的累计值。
使用时间轴函数的前提条件是在逻辑模型内定义了时间维。
上面两个函数说明中的“时间段”实际上指的是时间维的层级(Level)。
例如使用 Ago 函数定义“去年同期值”,指定的时间段为“年”这一层级,指定的回溯周期为 1,表示得到去年的值。
再比如使用 ToDate 函数定义“本年累计值”,指定的时间段也是“年”这一层级,表示从年的起点(年初)开始到当前时间为止,求度量值的累计值。
创建时间维的准备工作时间维的创建过程与创建普通维度基本相同,只是维度对象的某些设置不同。
因此创建物理模型、逻辑模型、及展现模型的过程在此不细说了,如果你不了解请参考之前的文章Hello BIEE。
在物理模型层,导入时间维表 V_COMMON_DATE;将 V_COMMON_DATE.DAY_ID 定义为V_COMMON_DATE 的主键;将 V_COMMON_DATE.DAY_ID 定义为 V_FINANCE_EXPENSE.CONSUME_DATE 的外键。
可视化 BI FineBI的时间类控件如何使用
可视化BI FineBI的时间类控件如何使用1. 描述时间类控件是控件类型中的一种,显然,时间类控件是用于过滤时间的控件,数据来源只能是时间类型数据,根据时间的形式不同,时间类控件可分为五种:年份控件、年月控件、年季度控件、日期控件以及日期区间控件,如下图:根据想要过滤的参数样式选择不同类型,比如说想要查看不同年份的数据,那么在选择时间控件时就需要选择年份控件。
注:时间控件不绑定字段也可以手动输入数据进行过滤,无需任何额外的设置,直接拖拽字段即可。
2. 时间类控件过滤多个维度时间类控件可以绑定多个维度,即可以过滤多个维度的数据,主要用于筛选多个窗体中的结果。
2.1 新增表格组件以测试为例,点击前面的编辑按钮,进入分析编辑界面,为该分析添加一个表格组件,设置表格的横向表头为注册时间,值为合同金额,注册时间的分组依据为年,同时将图表组件合同详细信息的合同签约时间的分组依据也改为年,如下图:2.2 时间类控件拖拽一个年份控件至页面中,如下图:点击右上角的按钮进入组件配置界面,将合同信息表中的注册时间以及合同签约时间字段拖曳进来,,如下图:注:时间控件绑定2个维度,如果这两个字段之间有关联,那么dashboard组件中数据过滤的时候,需要同时过滤2个字段所选的时间,即求交集,如果没有任何关联,只需要过滤相应字段即可。
2.3 效果查看如下图:10.5.2 同比环比示例1. 描述上一节我们简单介绍了时间类空间的简单用法,在某些场合,我们需要求同比环比、年累计等,这种情况下,我们可以用日期控件来实现。
2. 示例任意选择一个时间,展示出各公司当月回款目标、当月回款金额、当月回款完成比、上月回款金额、回款环比、年度累计回款额、上年累计回款额、回款同期比。
如下图:3. 添加组件在dashboard界面添加一个日期控件、两个树控件(分别命名为公司、项目)、一个查询按钮和一个重置按钮和一个统计组件(命名为回款汇总表)。
finebi函数
finebi函数
FineBI是一个商业智能工具,用于数据分析和可视化。
它提供了丰富的数据可视化功能,包括表格、图表、地图等,可以帮助用户快速地分析和探索数据。
FineBI的函数是用于在数据分析和可视化过程中进行数据处理和计算的函数。
这些函数可以用于数据清洗、转换、计算等操作,以及生成各种类型的图表和可视化效果。
FineBI的函数可以分为以下几类:
1. 数学函数:用于进行数学计算,如求和、平均值、最大值、最小值等。
2. 字符串函数:用于处理字符串数据,如连接字符串、截取字符串、替换字符串等。
3. 日期函数:用于处理日期和时间数据,如获取当前日期、计算日期差、格式化日期等。
4. 逻辑函数:用于进行条件判断,如判断是否满足某个条件、根据条件返回不同的值等。
5. 聚合函数:用于对数据进行聚合计算,如求平均值、计数、求和等。
6. 类型转换函数:用于将一种数据类型转换为另一种数据类型,如将字符串转换为数字、将日期转换为字符串等。
7. 自定义函数:用户可以自定义函数来满足特定的数据处理需求。
通过使用FineBI的函数,用户可以更加灵活地进行数据处理和计算,从而更好地分析和可视化数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
olap工具FineBI中的日期和时间函数凡函数中以日期作为参数因子的,其中日期的形式都必须是yyyy/mm/dd。
而且必须用英文环境下双引号(" ")引用。
1. DATEDATE(year,month,day):返回一个表示某一特定日期的系列数。
Year:代表年,可为一到四位数。
Month:代表月份。
若1<=month<= 12,则函数把参数值作为月。
若month>12,则函数从年的一月份开始往上累加。
例如:DATE(2000,25,2)等于2002年1月2日的系列数。
Day:代表日。
若日期小于等于某指定月的天数,则函数将此参数值作为日。
若日期大于某指定月的天数,则函数从指定月份的第一天开始往上累加。
若日期大于两个或多个月的总天数,则函数把减去两个月或多个月的余数加到第三或第四个月上,依此类推。
如:DATE(2000,3,35)等于2000年4月4日的系列数。
示例:DATE(1978, 9, 19)等于1978年9月19日。
DATE(1211, 12, 1)等于1211年12月1日。
其中月和日为1到9之间的数字时,不需要在前面加上0而直接写数字如DATE(2011, 2, 1)即可。
2. DATEDELTADATEDELTA(date, deltadays):返回一个日期——date后deltadays的日期。
deltaDays可以为正值,负值,零。
示例:DATEDELTA("2008-08-08", -10)等于2008-07-29。
DATEDELTA("2008-08-08", 10)等于2008-08-18。
3. DATEDIFDATEDIF(start_date,end_date,unit):返回两个指定日期间的天数、月数或年数。
Start_date:代表所指定时间段的初始日期。
End_date:代表所指定时间段的终止日期。
Unit:函数返回信息的类型。
若unit=“Y”,则DATEDIF返回指定时间段的年差数。
若unit=“M”,则DATEDIF返回指定时间段的月差数。
若unit=“D”,则DATEDIF返回指定时间段的日差数。
若unit=“MD”,则DATEDIF忽略年和月,返回指定时间段的日差数。
若unit=“YM”,则DATEDIF忽略年和日,返回指定时间段的月差数。
若unit=“YD”,则DATEDIF忽略年,返回指定时间段的日差数。
示例:DATEDIF("2001/2/28","2004/3/20","Y")等于3,即在2001年2月28日与2004年3月20日之间有3个整年。
DATEDIF("2001/2/28","2004/3/20","M")等于36,即在2001年2月28日与2004年3月20日之间有36个整月。
DATEDIF("2001/2/28","2004/3/20","D")等于1116,即在2001年2月28日与2004年3月20日之间有1116个整天。
DATEDIF("2001/2/28","2004/3/20","MD")等于8,即忽略月和年后,2001年2月28日与2004年3月20日的差为8天。
DATEDIF("2001/1/28","2004/3/20","YM")等于2,即忽略日和年后,2001年1月28日与2004年3月20日的差为2个月。
DATEDIF("2001/2/28","2004/3/20","YD")等于21,即忽略年后,2001年2月28日与2004年3月20日的差为21天。
4. DATEINMONTHDATEINMONTH(date, number):函数返回在某一个月当中第几天的日期。
示例:DATEINMONTH("2008-08-08", 20)等于2008-08-20。
5. DATEINQUARTERDATEINQUARTER(date, number):函数返回在某一个季度当中第几天的日期。
示例:DATEINQUARTER("2009-05-05", 20)等于2009-04-20。
6. DATEINWEEKDATEINWEEK(date, number):函数返回在某一个星期当中第几天的日期。
示例:dateInWeek("2008-08-28", 2)等于2008-08-26。
7. DATEINYEARDATEINYEAR(date, number):函数返回在某一年当中第几天的日期。
示例:dateInYEAR("2008/12/03", 300)等于2008-10-26。
8. DATESUBDATEDATESUBDATE(date1, date2, op):返回两个日期之间的时间差。
op表示返回的时间单位:"s",以秒为单位。
"m",以分钟为单位。
"h",以小时为单位。
"d",以天为单位。
"w",以周为单位。
示例:DATESUBDATE("2008-08-08", "2008-06-06","h")等于1512。
9. DATETONUMBERDATETONUMBER(date):返回自1970 年1月1日00:00:00 GMT经过的毫秒数。
示例:DATETONUMBER("2008-08-08")等于1218124800000。
10. DAYDAY:(serial_number)返回日期中的日。
DAY是介于1和31之间的一个数。
Serial_number:含有所求的年的日期。
备注:FineBI将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。
年1月2日保存为系列数3,将1900年1月3日保存为系列数4……依此类推。
如在1900年日期系统,1998年1月1日存为系列数35796。
示例:DAY("2000/1/1")等于1。
DAY("2006/05/05")等于5。
DAY("1997/04/20")等于20。
DAY(35796)等于1。
11. DAYS360DAYS360(start_date,end_date,method):按照一年360天的算法(每个月以30天计,一年共计12个月),返回两日期间相差的天数,这在会计计算中将会用到的。
如果财务系统是基于一年12个月,每月30天,可用此函数帮助计算支付款项。
Start_date和end_date :是用于计算期间天数的起止日期。
Method:它指定了在计算中是采用欧洲方法还是美国方法。
Method定义:FALSE或忽略美国方法(NASD)。
如果起始日期是一个月的31号,则等于同月的30号。
如果终止日期是一个月的31号,并且起始日期早于30号,则终止日期等于下一个月的1号,否则,终止日期等于本月的30号。
TRUE欧洲方法。
无论是起始日期还是终止日期为一个月的31号,都将等于本月的30号。
备注:FineBI将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。
年1月2日保存为系列数3,将1900年1月3日保存为系列数4……依此类推。
如在1900年日期系统,1998年1月1日存为系列数35796。
示例:DAYS360("1998/1/30", "1998/2/1")等于112. DAYSOFMONTHDAYSOFMONTH(date):返回从1900年1月后某年某月包含的天数。
示例:DAYSOFMONTH("1900-02-01")等于28。
DAYSOFMONTH("2008/04/04")等于3013. DAYSOFQUARTERDAYSOFQUARTER(date):返回从1900年1月后某年某季度的天数。
示例:DAYSOFQUARTER("2009-02-01")等于90。
DAYSOFQUARTER("2009/05/05")等于9114. DAYSOFYEARDAYSOFYEAR(year):返回1900年以后某年包含的天数。
示例:DAYSOFYEAR(2008)等于366,等价于:DAYSOFYEAR("2008-01-01")15. DAYVALUEDAYVALUE(date_text):返回代表date_text的一个系列数。
此函数可用来把一个文本形式的日期转化为一个系列数。
Date_text:是在电子表格日期格式中代表日期的文本格式。
例如“2000/2/28”备注:FineBI将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。
在1900年日期系统中,FineBI电子表格将1900年1月1日保存为系列数2,将1900年1月2日保存为系列数3,将1900年1月3日保存为系列数4……依此类推。
如在1900年日期系统,1998年1月1日存为系列数35796。
示例:DAYVALUE("2000/1/1")等于36526。
16. HOURHOUR(serial_number):返回某一指定时间的小时数。
函数指定HOUR为0(0:00)到23(23:00)之间的一个整数。
Serial_number:包含所求小时的时间。
示例:HOUR("11:32:40")等于11。
17. MINUTEMINUTE(serial_number):返回某一指定时间的分钟数,其值是介于0与59之间的一个整数。
Serial_number:包含所求分钟数的时间。
示例:MINUTE("15:36:25")等于36。
18. MONTHMONTH:(serial_number)返回日期中的月,月是介于1和12之间的一个数。
Serial_number:含有所求的月的日期。
备注:FineBI将日期保存为系列数,一个系列数代表一个与之匹配的日期,以方便用户对日期进行数值式计算。