GBase 8c 函数和操作符 - 类型转换函数 之 类型转换函数

  •  cash_words(money)

描述:类型转换函数,将money转换成text。

示例:

gbase=# SELECT cash_words('1.23');

            cash_words

-----------------------------------

 One dollar and twenty three cents

(1 row)

  •  cast(x as y)

描述:类型转换函数,将x转换成y指定的类型。

示例:

gbase=# SELECT cast('22-oct-1997' as timestamp);

      timestamp      

---------------------

 1997-10-22 00:00:00

(1 row)

  •  hextoraw(raw)

描述:将一个十六进制构成的字符串转换为raw类型。

返回值类型:raw

示例:

gbase=# SELECT hextoraw('7D');

 hextoraw

----------

 7D

(1 row)

  •  numtoday(numeric)

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

返回值类型:timestamp

示例:

gbase=# SELECT numtoday(2);

           numtoday

-------------------------------

 +000000002 00:00:00.000000000

(1 row)

  •  pg_systimestamp()

描述:获取系统时间戳。

返回值类型:timestamp with time zone

示例:

gbase=# SELECT pg_systimestamp();

        pg_systimestamp

-------------------------------

 2022-05-17 17:07:51.267568+08

(1 row)

  •  rawtohex(string)

描述:将一个二进制构成的字符串转换为十六进制的字符串。结果为输入字符的ACSII码,以十六进制表示。

返回值类型:varchar

示例:

码gbase=# SELECT rawtohex('1234567');

    rawtohex    

----------------

 31323334353637

(1 row)

  •  to_bigint(varchar)

描述:将字符类型转换为bigint类型。

返回值类型:bigint

示例:

gbase=# SELECT to_bigint('123364545554455');

    to_bigint    

----------------

 123364545554455

(1 row)

  •  to_char(datetime/interval [, fmt])

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

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

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

返回值类型:varchar

示例:

gbase=# SELECT to_char(current_timestamp,'HH12:MI:SS');

 to_char

----------

 05:08:27

(1 row)

gbase=# SELECT to_char(current_timestamp,'FMHH12:FMMI:FMSS');

to_char

---------

 5:8:34

(1 row)

  •  to_char(double precision/real, text)

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

返回值类型:text

示例:

gbase=# SELECT to_char(125.8::real, '999D99');

 to_char

---------

  125.80

(1 row)

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

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

可选参数fmt可以为以下几类:十进制字符、“分组”符、正负号和货币符号,每类都可以有不同的模板,模板之间可以合理组合,常见的模板有:9、0、,(千分隔符)、.(小数点)。

模板可以有类似FM的修饰词,但FM不抑制由模板0指定而输出的0。

要将整型类型的值转换成对应16进制值的字符串,使用模板X或x。

返回值类型:varchar

示例:

gbase=# SELECT to_char(1485,'9,999');

 to_char

---------

  1,485

(1 row)

gbase=# SELECT to_char( 1148.5,'9,999.999');

  to_char   

------------

  1,148.500

(1 row)

gbase=# SELECT to_char(148.5,'990999.909');

   to_char   

-------------

    0148.500

(1 row)

gbase=# SELECT to_char(123,'XXX');

 to_char

---------

   7B

(1 row)

  •  to_char(interval, text)

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

返回值类型:text

示例:

gbase=# SELECT to_char(interval '15h 2m 12s', 'HH24:MI:SS');

 to_char

----------

 15:02:12

(1 row)

  •  to_char(int, text)

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

返回值类型:text

示例:

gbase=# SELECT to_char(125, '999');

 to_char

---------

  125

(1 row)

  •  to_char(numeric, text)

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

返回值类型:text

示例:

gbase=# SELECT to_char(-125.8, '999D99S');

 to_char

---------

 125.80-

(1 row)

  •  to_c
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值