单行函数(5)

范例:格式化日期时间

SELECT SYSDATE 当前系统时间, TO_CHAR(SYSDATE,'YYYY-MM-DD') 格式化日期, TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') 格式化日期时间, TO_CHAR(SYSDATE,'FMYYYY-MM-DD HH24:MI:SS') 去掉前导0的时间 FROM dual;

注意:在开发中一定别取消前导0

范例:使用其他方式格式化年、月、日

除了使用标记(是一种习惯,java.text.SimpleDateFormat),也可以使用单词表示

SELECT SYSDATE 当前系统时间, TO_CHAR(SYSDATE,'YEAR-MONTH-DAY') 格式化日期 FROM dual; 或者: SELECT SYSDATE 当前系统时间, TO_CHAR(SYSDATE,'YEAR-MONTH-DY') 格式化日期 FROM dual;

范例:查询出所有在每年2月份雇佣的雇员信息

SELECT * FROM emp WHERE TO_CHAR(hiredate,'MM') = 2; 或者: SELECT * FROM emp WHERE TO_CHAR(hiredate,'MM') = '02';

范例:将每个雇员的雇佣日期进行格式化显示,要求所有的雇佣日期可以按照“年-月-日”的形式显示,也可将雇佣的年、月、日拆开分别显示

SELECT empno,ename,job,hiredate, TO_CHAR(hiredate,'YYYY-MM-DD') 格式化雇佣日期, TO_CHAR(hiredate,'YYYY') 年, TO_CHAR(hiredate,'MM') 月, TO_CHAR(hiredate,'DD') 日 FROM emp;

TO_CHAR() 函数的最为重要的功能是可以将数字格式化,例如:2389042809,如果是有经验的财务人员会按照三位一分:2,389,042,809 ,而要想按照此方法处理数字,就必须格式化。

数字格式化标记

No.转换格式描述
1   9   表示一位数字  
2   0   表示前导0  
3   $   将货币的符号信息显示为美元符号  
4   L   根据语言环境不同,自动选择货币符号  
5   .   显示小数点  
6   ,   显示千位符  

范例:格式化数字显示

SELECT TO_CHAR(987654321.789,'999,999,999,999.9999') 格式化数字, TO_CHAR(987654321.789,'000,000,000,000.0000') 格式化数字 FROM dual;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/4660a92bd9f744bd670d3268e8dfdc88.html