VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

TO_NCLOB

功能描述

TO_NCLOB 函数用于将数值型或者日期型数据转化为字符串。

TO_NCLOB 是 TO_CHAR 函数在Oracle兼容模式中的别名,两者的使用方式和效果相同。

注意事项

  • 该功能仅在数据库兼容模式为Oracle时支持(即数据库实例初始化时指定DBCOMPATIBILITY='A')。

  • NCLOBCLOB 数据类型在Oracle兼容模式中的别名。因此,本文中的 CLOB 数据类型均可使用 NCLOB 数据类型代替。

语法格式

to_nclob(datetime/interval [, fmt])

描述: 将一个DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE或者TIMESTAMP WITH LOCAL TIME ZONE类型的DATETIME或者INTERVAL值按照fmt指定的格式转换为TEXT类型。

  • 可选参数fmt可以为以下几类:日期、时间、星期、季度和世纪。每类都可以有不同的模板,模板之间可以合理组合,常见的模板有:HH、MI、SS、YYYY、MM、DD。

  • 模板可以有修饰词,常用的修饰词是FM,可以用来抑制前导的零或尾随的空白。

返回值类型: varchar

示例1:

SELECT to_nclob(current_timestamp,'HH12:MI:SS');

返回结果为:

to_nclob  
----------
10:19:26
(1 row)

示例2:

SELECT to_nclob(current_timestamp,'FMHH12:FMMI:FMSS');

返回结果为:

to_nclob  
----------
10:19:46
(1 row)

to_nclob(double precision/real, text)

描述: 将浮点类型的值转换为指定格式的字符串。

返回值类型: text

示例:

SELECT to_nclob(125.8::real, '999D99');

返回结果为:

to_nclob 
---------
125.80
(1 row)

to_nclob(numeric/smallint/integer/bigint/double precision/real[, fmt])

描述: 将一个整型或者浮点类型的值转换为指定格式的字符串。

  • 可选参数fmt可以为以下几类:十进制字符、“分组”符、正负号和货币符号,每类都可以有不同的模板,模板之间可以合理组合,常见的模板有:9、0、,(千分隔符)、.(小数点)。
  • 模板可以有类似FM的修饰词,但FM不抑制由模板0指定而输出的0。
  • 要将整型类型的值转换成对应16进制值的字符串,使用模板X或x。

返回值类型: varchar

示例1:

SELECT to_nclob(1485,'9,999');

返回结果为:

 to_nclob 
---------
  1,485
(1 row)

示例2:

SELECT to_nclob( 1148.5,'9,999.999');

返回结果为:

to_nclob
------------
1,148.500
(1 row)

示例3:

SELECT to_nclob(148.5,'990999.909');

返回结果为:

  to_nclob
-------------
  0148.500
(1 row)

示例4:

SELECT to_nclob(123,'XXX');

返回结果为:

to_nclob 
---------
7B
(1 row)

to_nclob(interval, text)

描述: 将时间间隔类型的值转换为指定格式的字符串。

返回值类型: text

示例:

SELECT to_nclob(interval '15h 2m 12s', 'HH24:MI:SS');

返回结果为:

to_nclob
----------
15:02:12
(1 row)

to_nclob(int, text)

描述: 将整数类型的值转换为指定格式的字符串。

返回值类型: text

示例:

SELECT to_nclob(125, '999');

返回结果为:

to_nclob
---------
 125
(1 row)

to_nclob(numeric, text)

描述: 将数字类型的值转换为指定格式的字符串。

返回值类型: text

示例:

SELECT to_nclob(-125.8, '999D99S');

返回结果为:

 to_nclob
----------
 125.80-
(1 row)

to_nclob(string)

描述: 将CHAR、VARCHAR、VARCHAR2、CLOB(NCLOB)类型转换为VARCHAR类型。

如使用该函数对CLOB(NCLOB)类型进行转换,且待转换CLOB(NCLOB)类型的值超出目标类型的范围,则返回错误。

返回值类型: varchar

示例:

SELECT to_nclob('01110');

返回结果为:

to_nclob
---------
01110
(1 row)

to_nclob(timestamp, text)

描述: 将时间戳类型的值转换为指定格式的字符串。

返回值类型: text

示例:

SELECT to_nclob(current_timestamp, 'HH12:MI:SS');

返回结果为:

to_nclob
----------
10:55:59
(1 row)