將十進制的數轉換為十六進制的數請使用to_char函數。
數據庫中16進制的表達是按照字符串來描述的,所以將十進制的數轉換為十六進制的數使用to_char函數
BYS@bys1>select to_char(10,'xxx'), to_char(42,'xxx') from dual;a 2a
SQL> select to_number('1999') year from dual;
YEAR
---------
1999
將十六進制的數轉換為十進制的數請使用to_number函數。
如下,16進制A是10.2A是2*16+A=42.注意xxx,如果轉換的數比較大,要多寫幾個,避免位數不足而報錯。
BYS@bys1>select to_number('a','xxx'), to_number('2a','xxx') from dual;
TO_NUMBER('A','XXX') TO_NUMBER('2A','XXX')
-------------------- ---------------------
10 42
更多在http://blog.csdn.net/q947817003/article/details/13015993
BYS@bys1>select to_date('2013/10/25 19:40:31' ,'yyyy-mm-dd hh24:mi:ss') from dual;2013/10/25 19:40:31
下面例子引用引烈講義:
yy是兩位來表示年,世紀永遠和說話者的當前世紀相同。##########################################################################################################################################
.LEAST 返回一組表達式中的最小值
SQL> select greatest('AA','AB','AC') from dual;
GR
--
AC
SQL> select greatest('白','李','張') from dual;
GREATEST('白','李','張')
------------------------
白
SQL> select least('白','李','張') from dual;
LEAST('白','李','張')
---------------------
張
ROWIDTOCHAR 將ROWID數據類型轉換為字符類型
BYS@bys1>select rowid,rowidtochar(rowid),chartorowid(rowidtochar(rowid)),ename from emp where rownum<2;
ROWID ROWIDTOCHAR(ROWID) CHARTOROWID(ROWIDT ENAME
------------------ ------------------ ------------------ ----------
AAAST0AAEAAAALDAAA AAAST0AAEAAAALDAAA AAAST0AAEAAAALDAAA SMITH
將源字符串 sset從一個語言字符集轉換到另一個目的dset字符集
SQL> select convert('strutz','we8hp','f7dec') "conversion" from dual;
conver
------
strutz
DUMP函數以fmt指定的內部數字格式返回一個VARCHAR2類型的值
SQL> select global_name,dump(global_name,1017,8,5) dump_string from global_name;
GLOBAL_NAME DUMP_STRING
------------------------------ --------------------------------------------------
ORACLE.WORLD Typ=1 Len=12 CharacterSet=ZHS16GBK: W,O,R,L,D
5.BFILENAME(dir,file)
指定一個外部二進制文件
SQL>insert into file_tb1 values(bfilename('lob_dir1','image1.gif'));
6.CONVERT('x','desc','source')
將x字段或變量的源source轉換為desc
7.EMPTY_BLOB()和EMPTY_CLOB()
這兩個函數都是用來對大數據類型字段進行初始化操作的函數
新聞熱點
疑難解答