问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Oracle的TO_CHAR与TO_DATE函数,转换格式一步到位

创作时间:
作者:
@小白创作中心

Oracle的TO_CHAR与TO_DATE函数,转换格式一步到位

引用
CSDN
1.
https://m.blog.csdn.net/zgt_certificate/article/details/141368900

1.TO_CHAR函数

  • 作用
    TO_CHAR函数用于将日期型数据或数字型数据转换为字符串。这个函数非常常用,特别是在需要将日期或数字显示在网页或报表中时。

  • 语法

  1. 将日期转换为字符串:
TO_CHAR(日期, 格式字符串)  
  • 示例:将emp表中员工的受聘日期按'yyyy-mm-dd day'的格式转换为字符串。
SELECT ename, TO_CHAR(hiredate, 'yyyy-mm-dd day') FROM emp WHERE empno=7902;  -- 代码编号 [000251]  
  • 说明:其中,hiredate是日期型数据,'yyyy-mm-dd day'是格式字符串,表示将日期按照"年-月-日 星期几"的格式显示出来。
  1. 将数字转换为字符串:
TO_CHAR(数字, 格式字符串)  
  • 示例:将数字9895按'$9,999.99'的格式转换为字符串。
SELECT TO_CHAR(9895, '$9,999.99') FROM DUAL;  -- 代码编号 [000254]  
  • 说明:这里'$9,999.99'格式字符串用于定义数字的显示格式,表示带有千分位符号和小数点的货币格式。

2.TO_DATE函数

  • 作用
    TO_DATE函数将一个字符串转换为日期型数据。它有两个参数:一个是待转换的字符串,另一个是格式字符串,用于指定字符串的格式。

  • 语法

TO_DATE(字符串, 格式字符串)  
  • 示例:将字符串'2017-07-03'按'yyyy-mm-dd'的格式转换为日期型数据。
SELECT TO_DATE('2017-07-03', 'yyyy-mm-dd') FROM DUAL;  -- 代码编号 [000255]  
  • 说明:格式字符串'yyyy-mm-dd'告诉Oracle如何解释字符串中的各部分,使其转换为正确的日期。

3.TO_NUMBER函数

  • 作用
    TO_NUMBER函数用于将字符串转换为数字型数据。它有两个参数:一个是待转换的字符串,另一个是格式字符串,用于定义字符串中的数字格式。

  • 语法

TO_NUMBER(字符串, 格式字符串)  
  • 示例
  1. 成功示例:将字符串'$1,000.50'按'$999,999.99'的格式转换为数字型数据。
SELECT TO_NUMBER('$1,000.50', '$999,999.99') FROM DUAL;  -- 代码编号 [000257]  
  • 说明:格式字符串中的$、逗号和小数点必须与待转换的字符串保持一致。
  1. 错误示例:尝试将字符串'$1000.50'按'$999,999.99'的格式转换为数字型数据,结果会报错。
SELECT TO_NUMBER('$1000.50', '$999,999.99') FROM DUAL;  -- 代码编号 [000258]  
  • 说明:由于格式字符串中规定了千分位符号,但在待转换字符串中未使用千分位符号,导致转换失败。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号