1 ASCIISTR
格式:ASCIISTR(C)
說明:將字串C轉換為ASCII字串,即將C中的ASCII字元保留不變,但非ASCII字元則以ASCII表示返回
舉例:
SQL>SELECT ASCIISTR('AB?CDE資料庫') A FROM DUAL;
A
---------------------
AB?CDE\6570\636E\5E93
2 BIN_TO_NUM
格式:BIN_TO_NUM(n1,n2,n3...)
說明:每位由n1,n2,n3等組成的二進位轉換為十進位
舉例:
SQL>SELECT BIN_TO_NUM(1,1,1,1) A FROM DUAL;
A
----------
15
3 CAST
格式:CAST(CAS T)
說明:將運算式C轉換成資料類型T。T可以是內量資料類型,也可以是程式員自訂的資料類型。前提是能夠轉換才可以轉換
舉例:
SQL>SELECT CAST('12345' AS NUMBER) A FROM DUAL;
A
----------
12345
4 DECODE
格式:DECODE(x,if 1,then 1, if 2 then 2 ,.., else z)
說明:將x與if值進行比較,如果等於if n就返回then n.否則就返回else z
舉例:
SQL>SELECT DECODE(1,1,0,-1) AS A,DECODE(1,0,0,-1) AS B FROM DUAL;
A B
--------------------
0 -1
5 NUMTODSINTERVAL
格式:NUMTODSINTERVAL(N,C)
說明:把數字N轉換成C指定的INTERVALDAY TO SECOND類型的資料。C的取值為DAY,HOUR,MINUTE,SECOND。C的大小寫無關
舉例:
SQL>SELECT SYSDATE+NUMTODSINTERVAL(10,'DAY') A,SYSDATE+NUMTODSINTERVAL(10,'HOUR') BFROM DUAL;
A B
-----------------------------------
2014/7/1117:20:11 2014/7/2 3:20:11
6 NUMTOYMINTERVAL
格式:NUMTODSINTERVAL(N,C)
說明:把數字N轉換成C指定的INTERVALDAY TO SECOND類型的資料。C的取值為YEAR、MONTH。C的大小寫無關
舉例:
SQL>SELECT SYSDATE+NUMTOYMINTERVAL(10,'YEAR') A,SYSDATE+NUMTOYMINTERVAL(10,'MONTH')B FROM DUAL;
A B
----------------------------------------
2024/7/117:24:18 2015/5/1 17:24:18
7 TO_CHAR
格式:TO_CHAR(X[,fmt])
說明:將X按fmt格式轉換成字串。X可以是一個日期或者數字,也可以是一個字串,fmt是一個規定了X採用何種格式轉換的格式字串
舉例:
SQL>SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD') A,TO_CHAR(111) B FROM DUAL;
A B
-------------
2014-07-02111
8 TO_CLOB
格式:TO_CLOB(x)
說明:將LOB列中的NCLOB值或其他字串x轉換成CLOB值
舉例:
SQL>SELECT TO_CLOB('AAAA') A FROM DUAL;
A
--------------------------------------------------------------------------------
AAAA
9 TO_DATE
格式:TO_DATE(C[,fmt])
說明:將符合fmt指定的特定日期格式的字串C轉換成DATE類型的資料
舉例:
SQL>SELECT TO_DATE('2014-07-02','YYYY-MM-DD') A,TO_DATE('2014-07','YYYY-MM') B FROMDUAL;
A B
----------------------
2014/7/2 2014/7/1
10 TO_DSINTERVAL
格式:TO_DSINTERVAL(C)
說明:將符合特定格式的字串C轉換成INTERVALDAY TO SECOND類型的資料
舉例:
SQL>SELECT SYSDATE+TO_DSINTERVAL('1000:00:00') A FROM DUAL;
A
-----------------
2014/7/128:49:39
11 TO_LOB
格式:TO_LOB(X)
說明:將LONG列中的值X轉換成LOB列的值
舉例:
12 TO_NUMBER
格式:TO_NUMBER(C[,fmt])
說明:將符合fmt指定的特定數字格式的字串C轉換成數字類型的資料
舉例:
SQL>SELECT TO_NUMBER('0101') A FROM DUAL;
A
----------
101
13 TO_TIMESTAMP
格式:TO_TIMESTAMP(C)
說明:將字串C轉換為一個TIMESTAMP資料類型
舉例:
SQL>SELECT TO_TIMESTAMP('2014-07-1214:10:10.12320', 'YYYY-MM-dd HH24:MI:SS.FF') A FROM DUAL;
A
--------------------------------------------------------------------------------
12-7月-14 02.10.10.123200000下午
14 TO_TIMESTAMP_TZ
格式:TO_TIMESTAMP_TZ(C[, fmt])
說明:將符合fmt指定的特定日期格式的字串C轉換成TIMESTAMPWITH TIMEZONE類型的資料,帶時區
舉例:
SQL>SELECT TO_TIMESTAMP_TZ('2014-07-1214:10:10.12320', 'YYYY-MM-dd HH24:MI:SS.FF') A FROM DUAL;
A
--------------------------------------------------------------------------------
12-7月-14 02.10.10.123200000下午 +08:00
15 TO_YMINTERVAL
格式:TO_YMINTERVAL(C)
說明:將符合特定格式的字串C轉換成INTERVALYEAR TO MONTH類型的資料
舉例:
SQL>SELECT SYSDATE+TO_YMINTERVAL('01-03') AFROM DUAL;
A
-----------------
2015/10/29:26:45
16 TRANSLATE
格式:TRANSLATE(X,if y, then z)
說明:查看X中的每個字元,然後查看該字元在if y中是否存在。如果存在,就在if y中找到該字元的位置,然後用then z中相同位置的字元替代該字元,最後返回全部替代之後的X
舉例:
SQL>SELECT TRANSLATE('abcdefghij','abcdef','123456') A FROM dual;
A
----------
123456ghij
17 UNISTR
格式:UNISTR(c)
說明:返回字串c對應的UNICOOE字元
舉例:
SQL>SELECT UNISTR('01-03') A FROM DUAL;
A
-----------------
01-03