【问题标题】:Converting datatype of @biServer.variables in OBIEE 12c在 OBIEE 12c 中转换 @biServer.variables 的数据类型
【发布时间】:2022-01-22 22:16:58
【问题描述】:
我正在使用其中一个存储库变量来提取年份,这是 SQL 代码:
SELECT "Time_D"."Year"
FROM "Order D"
WHERE "Time_D"."Year" <= '@{biServer.variables[' Current_year ']}'
AND "Time_D"."Year" >= '2020'
ORDER BY "Time_D"."Year" DESC
但结果是:
2021,00
2020,00
如何去掉年份前面的',00'?
【问题讨论】:
标签:
oracle
oracle12c
obiee
【解决方案1】:
这一切都归结为数据类型。如果您的输出是数字类型,则默认情况下您将使用小数精度。与 2021 年一样。
“2021”是一个字符串,而不是一个数字。因此,如果您的输出是一个数字,那么您只需将结果格式化为“0 小数”。
也就是说 - 你在哪里写 SQL?!在直接数据库请求中?
【解决方案2】:
Khm,它实际上是 在它的后面。
就 Oracle 本身而言,您可以尝试使用 substr 或 regexp_substr,例如
select substr("Time_D"."Year", 1, 4) as year_1,
regexp_substr("Time_D"."Year", '\d+') as year_2
from ...
或者,如果这是 OBIEE 中的 item,请设置其格式掩码(以删除小数)。