这里只是作为之前谈论oracle内部函数的一些博文的一些补充。
其中包括有转换函数中的日期转字符,数据转字符等等。可以通过
以下的例子讲述:
----转换函数:
---当前时间:
sys@PROD>select to_char(sysdate,'yyyy-mm dd hh24:mi:ss')
2 from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2016-11 15 21:13:48
---时间类型转换字符类型yyyy与year的区别:
sys@PROD>select to_char(sysdate,'yyyy'),
2 to_char(sysdate,'year') from dual;
TO_C TO_CHAR(SYSDATE,'YEAR')
---- ------------------------------------------
2016 twenty sixteen
#这其中yyyy就是我们日常比较熟悉的年份显示格式,而year格式是名称格式。
---查看当前日期月份转换为字符型的显示格式:
sys@PROD>select to_char(sysdate,'mm'), to_char(sysdate,'mon'),
2 to_char(sysdate,'month') from dual;
TO TO_CHAR(SYSD TO_CHAR(SYSDATE,'MONTH')
-- ------------ ------------------------------------
11 nov november
#也同样跟年份相类似。
---查看完整的日期:
sys@PROD>select to_char(sysdate,'ddspth "of" mon year')
2 from dual;
TO_CHAR(SYSDATE,'DDSPTH"OF"MONYEAR')
-------------------------------------------------------------------------
fifteenth of nov twenty sixteen
#这里可以按照自己的想法,可以把年月日互调位置,也可以自己选择显示格式,
这里则选择了英文名称的显示格式。
---数据类型转化为字符类型:
sys@PROD>select to_char(559578,'L999,999.00'),
2 to_char(559578,'$999,999.00') from dual;
TO_CHAR(559578,'L999, TO_CHAR(5595
--------------------- ------------
$559,578.00 $559,578.00
#“L999”是以本地货币格式显示,因为数据库的字符集是美国语言的。
#“$999”就是以美元为显示单位格式显示,所以两个的显示是一样的。
---字符类型转换为数据类型:
sys@PROD>select to_number('$559,578','$999999')
2 from dual;
TO_NUMBER('$559,578','$999999')
-------------------------------
559578