【发布时间】:2020-08-11 23:25:15
【问题描述】:
我正在尝试提出解决方案,为上一个营业日期自动生成自动 OBIEE 12 报告(例如,在星期一生成报告时,想过滤星期五的数据)。我想出了两个解决方案:
CURRENT_DATE-1
这显然只适用于周二至周六生成的报告。
我还想出了一个更复杂的解决方案,它没有返回任何结果(不知道为什么):
CASE
WHEN DayOfWeek(TimestampAdd (SQL_TSI_DAY, -1 , CURRENT_DATE)) = 1
THEN TimestampAdd (SQL_TSI_DAY, -3 , CURRENT_DATE)
WHEN DayOfWeek(TimestampAdd (SQL_TSI_DAY, -1 , CURRENT_DATE)) = 7
THEN TimestampAdd (SQL_TSI_DAY, -2 , CURRENT_DATE)
ELSE TimestampAdd (SQL_TSI_DAY, -1 , CURRENT_DATE)
END
当使用此表达式过滤日期时,OBIEE 返回没有数据匹配的信息。对于同一日期,使用 CURRENT_DATE-1 生成正确的结果(除了在星期一、星期六和星期日生成的报告之外,ofc)
【问题讨论】:
标签: sql oracle plsql business-intelligence obiee