本文將演示如下3個 Oracle中的經常使用日期函數。函數
函數學習 |
功能code |
TO_CHAR(d|n[,fmt])blog |
把日期和數字轉換爲制定格式的字符串ip |
TO_DATE(x [,fmt])字符串 |
把一個字符串以fmt格式轉換爲一個日期類型get |
TO_NUMBER(x[,fmt])table |
把一個字符串以fmt格式轉換爲一個數字date |
下面將結合實例對這些函數進行介紹。數據類型
轉換函數將值從一種數據類型轉換爲另一種數據類型。經常使用的轉換函數有:
l TO_CHAR(d|n[,fmt])
把日期和數字轉換爲制定格式的字符串。fmt是格式化字符串,日期的格式化字符串前面已經學習過。
示例1:TO_CHAR對日期的處理
SQL> SELECT TO_CHAR(SYSDATE,'YYYY"年"MM"月"DD"日" HH24:MI:SS') "DATE" 2 FROM DUAL;
DATE ----------------------- 2016年12月07日 15:43:59 |
針對數字的格式化,格式化字符有:
參數 |
示例 |
說明 |
9 |
999 |
指定位置處顯示數字。 |
. |
9.9 |
指定位置返回小數點 |
, |
99,99 |
指定位置返回一個逗號 |
$ |
$999 |
數字開頭返回一個美圓符號 |
EEEE |
9.99EEEE |
科學計數法表示 |
L |
L999 |
數字前加一個本地貨幣符號 |
PR |
999PR |
若是數字式負數則用尖括號進行表示 |
示例2:TO_CHAR對數字的處理
SQL> SELECT TO_CHAR(-123123.45,'L9.9EEEEPR') "DATE" FROM DUAL;
DATE -------------------- <¥1.2E+05> |
l TO_DATE(x [,fmt])
把一個字符串以fmt格式轉換爲一個日期類型。
示例3:向EMP表添加一個記錄,其中hiredate字段是日期類型.
SQL> insert into emp(empno,ename,job,hiredate,sal) values 2 (7789,'SIMA','CLERK',TO_DATE('1982-1-23','YYYY-MM-DD'),3000.0);
已建立 1 行。 |
l TO_NUMBER(x[,fmt])
把一個字符串以fmt格式轉換爲一個數字。fmt格式字符參考表3。
示例4:TO_NUMBER函數
SQL> SELECT TO_NUMBER('-$12,345.67','$99,999.99') FROM DUAL;
TO_NUMBER('-$12,345.67','$99,999.99') ------------------------------------- -12345.67 |