在 OBIEE 12c 中转换 @biServer.variables 的数据类型
Converting datatype of @biServer.variables in OBIEE 12c
我正在使用一个存储库变量来提取年份,这里是 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'?
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 中的 项,请设置其格式掩码(以删除小数位)。
这一切都归结为数据类型。如果您的输出是数字类型,那么默认情况下您将使用小数精度。与 2021 年一样,00.
"2021" 是字符串,不是数字。因此,如果您的输出是一个数字,那么您只需要将结果格式化为“0 位小数”。
就是说 - 你在哪里写的 SQL?!在直接数据库请求中?
我正在使用一个存储库变量来提取年份,这里是 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'?
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 中的 项,请设置其格式掩码(以删除小数位)。
这一切都归结为数据类型。如果您的输出是数字类型,那么默认情况下您将使用小数精度。与 2021 年一样,00.
"2021" 是字符串,不是数字。因此,如果您的输出是一个数字,那么您只需要将结果格式化为“0 位小数”。
就是说 - 你在哪里写的 SQL?!在直接数据库请求中?