42、CHARTOROWID 将字符数据类型转换为ROWID类型
SQL> select rowid,chartorowid(rowid),ename from scott.emp;
43、CONVERT(c,dset,sset) 将源字符串 sset从一个语言字符集转换到另一个目的dset字符集
SQL> select convert('strutz','we8hp','f7dec') \from
dual;
44、HEXTORAW 将一个十六进制构成的字符串转换为二进制
SQL> select HEXTORAW('abc') from dual;
45、RAWTOHEXT 将一个二进制构成的字符串转换为十六进制
46、ROWIDTOCHAR 将ROWID数据类型转换为字符类型
SQL> select rowid,rowidtochar(rowid),ename from scott.emp;
47、TO_CHAR(date,format) 将日期转化为字符串
SQL> select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') 日期转换 from
dual;
48、TO_DATE(string,format) 将字符串转化为ORACLE中的一个日期
SQL> select to_date(20121014,'yyyy/mm/dd') 日期转换 from dual;
49、TO_MULTI_BYTE 将字符串中的单字节字符转化为多字节字符
SQL> select to_multi_byte('高') 单字节转多字节 from dual;
50、TO_NUMBER 将给出的字符转换为数字
SQL> select to_number(1999) year from dual;
51、BFILENAME(dir,file) 指定一个外部二进制文件
SQL>insert into file_tb1 values(bfilename(lob_dir1,image1.gif));
52、CONVERT(x,desc,source) 将x字段或变量的源source转换为desc
SQL> select sid,serial#,username,decode(command,
'none','insert', 'select',
'update', 'delete', 'drop',
'other') cmd from v$session where type!='background';
53、DUMP(s,fmt,start,length) 以fmt指定的内部数字格式返回一个VARCHAR2类型的值
SQL> col global_name for a30 SQL> col dump_string for a50 SQL> set lin 200 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
54、EMPTY_BLOB()和EMPTY_CLOB() 这两个函数都是用来对大数据类型字段进行初始化操作的函数
55、GREATEST 返回一组表达式中的最大值,即比较字符的编码大小.
SQL> select greatest('AA','AB','AC') 最大值 from dual;
SQL> select greatest('啊','安','天') from dual;
56、LEAST 返回一组表达式中的最小值
SQL> select least('啊','安','天') from dual;
57、UID 返回标识当前用户的唯一整数
SQL> show user
SQL> select username,user_id from dba_users where user_id=uid;
58、USER 返回当前用户的名字
SQL> select user from dual;
59、USEREVN 返回当前用户环境的信息
opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE ISDBA 查看当前用户是否是DBA如果是则返回true
SQL> select userenv('isdba') 是否为管理员 from dual;
SESSION 返回会话标志
SQL> select userenv(sessionid) from dual; USERENV(SESSIONID) -------------------- 152 ENTRYID 返回会话入口标志
SQL> select userenv(entryid) from dual; USERENV(ENTRYID) ------------------ 0 INSTANCE 返回当前INSTANCE的标志
SQL> select userenv(instance) from dual; USERENV(INSTANCE) ------------------- 1
LANGUAGE 返回当前环境变量
SQL> select userenv('language') from dual;
LANG
返回当前环境的语言的缩写
SQL> select userenv(lang) from dual; USERENV(LANG)
---------------------------------------------------- ZHS TERMINAL
返回用户的终端或机器的标志
SQL> select userenv(terminal) from dual; USERENV(TERMINA ---------------- GAO VSIZE(X)
返回X的大小(字节)数
SQL> select vsize(user),user from dual; VSIZE(USER) USER
----------- ------------------------------ 6 SYSTEM
60、AVG(DISTINCT|ALL) all表示对所有的值求平均值,distinct只对不同的值求平均值
SQLWKS> create table table3(xm varchar(8),sal number(7,2)); 语句已处理。
SQLWKS> insert into table3 values(gao,1111.11); SQLWKS> insert into table3 values(gao,1111.11); SQLWKS> insert into table3 values(zhu,5555.55); SQLWKS> commit; SQL> select avg(distinct sal) from gao.table3; AVG(DISTINCTSAL) ----------------
3333.33
SQL> select avg(all sal) from gao.table3; AVG(ALLSAL) -----------
2592.59
61、MAX(DISTINCT|ALL) 求最大值
ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次 SQL> select max(distinct sal) 最大值 from scott.emp;
62、MIN(DISTINCT|ALL) 求最小值
ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次 SQL> select min(distinct sal) 最小值 from scott.emp;