1. TO_CHAR(日期|数字|列,转换格式):将指定的数据按照指定的格式变为字符串型;
2. TO_DATE(字符串|列,转换格式):将指定字符串按照指定的格式变为date型;
3. TO_NUMBER(字符串|列):将指定的数据类型变为数字型;
TO_CHAR()日期函数:
SELECT SYSDATE 系统当前时间,
TO_CHAR(SYSDATE,‘YYYY-MM-DD’) 格式化日期,
TO_CHAR(SYSDATE,’YYYY-MM-DDHH24:mi:ss’) 格式化日期时间,
TO_CHAR(SYSDATE,'FMYYYY-MM-DDHH24:mi:ss') 去掉前导0格式化日期时间
FROM dual;
使用其他方法格式化年,月,日:
SELECT SYSDATE ,
TO_CHAR(SYSDATE, 'YEAR-MONTH-DAY')
FROM dual;
查询所有每年二月份的雇员信息:
SELECT *
FROM emp
WHERE TO_CHAR(hiredate,'DD')='02';(WHERETO_CHAR(hiredate,'DD')=2;)
将每个雇员的雇拥日期进行格式化显示,要求所有的雇拥日期按照年—月—日显示,也可以分别显示:
SELECT empno,ename,hiredate,
TO_CHAR(hiredate,'YYYY-MM-DD') 雇拥时间,
TO_CHAR(hiredate,'yyyy'),
TO_CHAR(hiredate,'MM'),
TO_CHAR(hiredate,'DD')
FROM emp;
SELECT
TO_CHAR(123456789.123,'999,999,999,999.99999')格式化数字,
TO_CHAR(123456789.123,'000,000,000,000.00000') 有前导0格式化数字
FROMdual;
显示货币:
SELECT
TO_CHAR(123456789.123,'L999,999,999,999.99999') 显示货币,
TO_CHAR(123456789.123,'$000,000,000,000.00000') 美元
FROMdual;
To_DATE()函数:
将字符变为数字:
SELECT
TO_DATE('1903-05-6','YYYY-MM-DD')
FROM dual;
TO_NUMBER()函数:
SELECT
TO_NUMBER('09') + TO_NUMBER('19') 加法操作
FROM dual;