打印      打开 PDF 版本的联机帮助


上一主题

下一主题

转换函数

转换函数将值从一种形式转换为另一种形式。

Cast

将某个值或空值的数据类型转换为另一种数据类型。在需要某种数据类型的函数或运算中使用另外一种数据类型的值时,必须进行此更改。

语法:

CAST (expression|NULL AS datatype)

可以将值更改成的支持数据类型如下:

CHARACTER、VARCHAR、INTEGER、FLOAT、SMALLINT、DOUBLE PRECISION、DATE、TIME、TIMESTAMP、BIT、BIT VARYING

根据源数据类型,不支持某些目标类型。例如,如果源数据类型是 BIT 串,则目标数据类型应为字符串或其他 BIT 串。

例如:

下面的代码先将 Annual Revenues 更改 (CAST) 为 INTEGER 以删除小数位,然后更改为 CHARACTER 以便它可以和字符文字(文本“K”)连接:

CAST ( CAST ( Account."Account Revenue"/1000 AS INTEGER ) AS CHARACTER ) ||' K'

如果您使用 CAST 函数,则 CAST 函数可能在值的结尾返回一个额外的空格:CAST(YEAR("Date Created".Date) as char) || '*' returns "2012 *"

您可以通过指定返回值的长度来避免此问题,例如:

CAST(YEAR("Date Created".Date) as char(4)))

IfNull

测试表达式计算结果是否为空值,如果不是空值,则为表达式分配指定的值。

语法:

IFNULL (expression, value)

ValueOf( )

在表达式生成器或筛选器中使用 VALUEOF 函数引用会话变量的值。有关更多信息,请参阅分析中的会话变量

会话变量应该用作 VALUEOF 函数的参数。通过名称引用会话变量。

例如:

使用名为 NQ_SESSION.CURRENT_YEAR 的会话变量的值:

CASE WHEN "Year" > VALUEOF(NQ_SESSION.CURRENT_YEAR) THEN 'Future' WHEN ... ELSE...END

必须通过会话变量的完全限定名称引用会话变量。


已发布 8月 2018 Copyright © 2005, 2018, Oracle. 保留所有权利。Legal Notices.