资源描述:
《oracle数据库函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、oracle数据库函数oracle数据库中函数:***************笛卡尔集:两个表的记录相乘******************查看树有几层selectcount(distinctlevel)fromempstartwithempno=7839connectbypriorempno=mgrselectlevel,lpad('',2*level-1)
2、
3、enamefromempstartwithempno=7839connectbypriorempno=mgr使用集合操作符集合操作符可以将两个或者多个查询返回的行组合起来。1、unionall:返回各个查询检索出的所有行,包括重复的
4、行2、union:返回各个查询检索出的所有行,不包括重复行3、intersect:返回两个查询检索出的共有行4、minus:返回将第二个查询检索出的行从第一个查询检索出的行中减去之后剩余的记录UNION和UNIONALL的区别:1.在查询中会遇到UNIONALL,它的用法和union一样,只不过union含有distinct的功能,它会把两张表重复的记录去掉,而unionall不会,所以从效率上,unionall会高一点.2.unionall是按原先顺序排列的,union把两张表中的重复数据去掉后还进行了重新排序MINUS:指令是运用在两个SQL语句上。它先找出第一个SQL语句所产生的结果,
5、然后看这些结果有没有在第二个SQL语句的结果中。如果有的话,那这一笔资料就被去除,而不会在最后的结果中出现。如果第二个SQL语句所产生的结果并没有存在于第一个SQL语句所产生的结果内,那这笔资料就被抛弃。常用函数:(1)nvl(string,t_number)string为NULL(空)值的时候,取t_number值将空值转换成一个具有实际意义的值,独步一时空值影响emp表中所有员工的一年的总收入:selectename,sal*12*(1+nvl(comm/10000,0))fromemp;nvl2(c1,c2,c3)---c1为空,取c3值,如果c1,c3都为空则取c2(2)distin
6、ct:防止数据重复性selectdistinctdnamefromdept;不同部门的不同作:selectdistinctd.dname,e.jobfromdeptd,empewheree.deptno=d.deptno;(3)dual哑表/伪表ascii--返回指定字符对应的十进制数selectascii('A')A,ascii('a')a,ascii('0')zero,ascii('')spacefromdual;(4)chr指定的数字返回相应的字符selectchr(65)字符1,chr(54740)字符2fromdual;(5)concat('ss','uu')连接两个字符selec
7、tconcat('0531-','2587456')
8、
9、'转068'phonefromdual;(6)initcap(string)将英文字符串首字母转变成大写selectinitcap('smith')fromdual;(7)instr(c1,c2,I,J)在一个字符串中搜索指定的字符,返回出现指定字符出现的位置c1:被检索的字符串c2:检索的字符串I:检索开始的位置,默认值是1J:出现的位置,默认值是1selectinstr('oracletraining','ra',1,2)fromdual;返回值是9(8)length(string)求指定字符串的长度selectlength('su
10、ning')fromdual;返回值是6(9)lower('ABC')将英文字符大写转变成小写selectlower('SUNING')fromdual;(10)upper('abc')将英文字符小写转在大写selectupper('suning')fromdual;(11)粘贴字符(在左边)lpad('su',10,'?')selectlpad('su',10,'?')fromdual;(12)粘贴字符(在右边)lpad('su',10,'?')selectrpad('ning',10,'#')fromdual;selectlpad(rpad('suning',10,'*'),14,'#'
11、)fromdual;返回####suning****(13)ltrim('su',''):删除左边出现的字符串---‘’空格而言selectltrim('suning','')fromdual;(14)ltrim('su',''):删除右边出现的字符串---‘’空格而言selectrtrim('suning','')fromdual;selectltrim(rtrim('suning',''),'')from