在Microstrategy中应用当年的简单公式

时间:2014-10-07 06:39:14

标签: oracle analytics microstrategy

我想知道如何使用适用于微策略的Oracle数据库的ApplySimple公式来提取当前年份。

我尝试的公式是:

ApplySimple(" TO_CHAR(SYSTIMESTAMP,'年份')&#34)

即使这个公式是有效的 - 当我尝试使用这个公式来创建属性,并在报告中显示它时,我没有得到任何结果(空白列)

我实际上要做的是将当前年份属性与另一年属性进行比较,并根据此属性创建过滤器。

任何帮助都将不胜感激!

2 个答案:

答案 0 :(得分:2)

我根本不打扰ApplySimple,可以直接在过滤器中完成。

对要比较的属性表单(可能是年份ID)进行限定,然后在“运算符”部分中,将下拉列表从默认的“值”更改为“自定义”。

这使您可以在资格认证中使用MicroStrategy的内置功能。可以通过以下方式返回当前年份:

Year(CurrentDate())

供您比较。

答案 1 :(得分:0)

你确定要比较字符串“二十四”吗?因为,TO_CHAR(SYSTIMESTAMP,'year')会返回。相反,您可能需要YYYY格式:

TO_CHAR(SYSTIMESTAMP,'YYYY')

但那仍然是一个字符串。

您可能需要NUMBER

所以,我更喜欢,EXTRACT(YEAR FROM SYSTIMESTAMP)因为,这会将2014作为NUMBER返回。

SQL> SELECT EXTRACT(YEAR FROM SYSTIMESTAMP) FROM DUAL;

EXTRACT(YEARFROMSYSTIMESTAMP)
-----------------------------
                         2014

<强>式

如果属性为NUMBER数据类型,则可能需要以下公式:

ApplySimple("EXTRACT(YEAR FROM SYSTIMESTAMP)")