ORACLE SQL数据类型转换

ORACLE SQL数据类型转换

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42217767/article/details/89076746

ORACLE SQL数据类型转换

开发工具与关键技术:Oracle sql*plus  PLSQL Developer
撰写时间:2019年3月25日
  • 1
  • 2

下面要说的是,如何将不同类型的数据进行转换处理
这里主要包括有三个函数 时间转换:TO_DATE ,字符转换:TO_CHAR 数值转换:TO_NUMBER
看下图理解:
在这里插入图片描述

上图可以理解为(char字符,date时间,number数字)
1、当char类型转换date类型时需要用到to_date函数,
2、当date类型转换char类型时需要用到to_char函数
3、当char类型转换number类型时需要用到to_number函数
4、当number类型转换char类型时需要用到to_char函数
下面看例子
例1:将当前的时间转换为想要的格式输出
已经使用to_char函数进行转换的结果
说明:为什么要用to_char,因为sysdate是系统定义好的时间函数,而’’(单引号)里面的是字符,所以选择时间转字符

select TO_CHAR(sysdate,'YYYY_MM_DD') from employees;
  • 1

在这里插入图片描述

未使用to_char函数进行转换的数据

select sysdate from employees
  • 1

在这里插入图片描述
例2:将1999-01-01日期按格式显示出来
使用to_date函数把字符类型的’1999-01-01’转换为日期格式

select to_date('1999-01-01','yyyy-mm-dd') from employees;
  • 1

在这里插入图片描述

例3:将工资转换为数值类型
(因为工资已经是数值类型的,所以在下面只是表达一下,说明是需要字符类型才能转换为数值类型,但是一定要对应后面的转换)

SELECT TO_NUMBER(TO_CHAR(SALARY,'$999,999,999,999.99'),'$999,999,999,999.99') FROM EMPLOYEES
  • 1

在这里插入图片描述
不对应后面的类型例子,下面例子是不成立的,因为前面字符比后面的数字类型要多

Select to_number('¥123,465,469,879.84','L999,999.99') FROM EMPLOYEES
  • 1

在这里插入图片描述

原文地址:https://www.cnblogs.com/xudj/p/11892740.html