Oracle DB TO_CHAR、TO_DATE、TO_NUMBER 函数
TO_CHAR( date, 'format_model')
格式样式具有以下特点:
• 必须放在单引号内
• 区分大小写
• 可以包含任何有效的日期格式元素
• 具有一个fm元素,用于删除填充的空格或隐藏前导零
• 与日期值之间用逗号分隔
TO_CHAR可以按照由format_model 指定的格式,将日期时间数据类型转换为数据类型为
VARCHAR2 的值。格式样式是一种字符文字,用于描述字符串中存储的日期时间的格式。
例如,字符串'11-Nov-1999' 的日期时间格式样式为'DD-Mon-YYYY' 。可以使用
TO_CHAR函数将日期从默认格式转换为指定的格式。
准则
• 格式样式是区分大小写的,而且必须放在单引号内。
• 格式样式可以包含任何有效的日期格式元素。但一定要使用逗号将日期值与格式样式
分隔开。
• 输出中的日和月名称会自动用空格填充。
• 要删除填充的空格或隐藏前导零,请使用填充模式fm元素。
hr@TEST0924> SELECT employee_id, TO_CHAR(hire_date, 'MM/YY') Month_Hired FROM employees WHERE last_name = 'Higgins';
EMPLOYEE_ID MONTH
----------- -----
205 06/02
使用下表中列出的格式可显示时间信息和文字,并将数字更改为拼写数字。
hr@TEST0924> SELECT last_name,TO_CHAR(hire_date, 'fmDD Month YYYY') AS HIREDATE FROM employees;
LAST_NAME HIREDATE
------------------------- --------------------------------------------
OConnell 21 June 2007
Grant 13 January 2008
Whalen 17 September 2003
...
107 rows selected.
示例中的SQL 语句显示所有雇员的姓氏和聘用日期。聘用日期显示为“17 June 1987”。
示例:
修改幻灯片中的示例,使其以“Seventeenth of June 1987 12:00:00 AM ”格式显示日期。
hr@TEST0924> SELECT last_name, TO_CHAR(hire_date, 'fmDdspth "of" Month YYYY fmHH:MI:SS AM') HIREDATE FROM employees;
LAST_NAME HIREDATE
------------------------- -----------------------------------------------------------------------
OConnell Twenty-First of June 2007 12:00:00 AM
Grant Thirteenth of January 2008 12:00:00 AM
Whalen Seventeenth of September 2003 12:00:00 AM
Hartstein Seventeenth of February 2004 12:00:00 AM
...
107 rows selected.
请注意,月份将遵循指定的格式样式;换句话说,首字母为大写,其它字母为小写。
更多详情见请继续阅读下一页的精彩内容:
Oracle数据库中的函数,包和触发器
Oracle中窗口函数over()的学习
Oracle数据库生成随机数的函数
Oracle自定义函数查询数据字典项
Oracle日期函数/字符函数/数字函数/转换函数/聚合函数
Oracle中Decode()函数使用说明
评论暂时关闭