字符函数
Initcap(char)
--首字母大写 select initcap(‘nihao‘) from dual
Lower(char)
--转小写 select empno,lower(ename),lower(job) from emp
Upper(char)
--转大写 select upper(‘nihao‘) from dual
Ltrim(char,set):从左边开始 只要包换syz的 或者只包含单独的x,y,z的都去除掉(必须得在开头的)
--ltrim(从左边开始 ) select ltrim(‘xadyminyxz‘,‘xyz‘) from dual;
运行后:
Rtrim(char,set) :从右边开始 只要包含syz的 或者只包含单独的x,y,z的都去除掉(必须得在开头的)
--rtrim(从右边开始 ) select rtrim(‘xadyminyxz‘,‘xyz‘) from dual;
运行后:
Translate(char, from, to):吧第一个字符串j 替换成了b
Select translate(‘jack’,’j’ ,’b’) from dual;
运行后:
Replace(char, searchstring,rep string):吧所有的j都换成了bl
Select replace(‘jack and jue’ ,’j’,’bl’) from dual;
运行后:
Instr (s1, s2 [,i ,j]:求j在i里是第几位字符串(这里从0开始)
Select instr (‘worldwide’,’d’) from dual;
运行后:
Substr (s, m, n) :从m开始 截取n个数值(从1开始)
Select substr(‘abcdefg’,3,2) from dual;
运行后:
最后一个是链接字符串
DECODE:逐个值替换
select ename,decode(deptno,‘10‘,‘运维部‘,‘20‘,‘开发部‘,‘30‘, ‘产品部‘)as deptno from emp
运行后:
数学函数:
abs:求绝对值
ceil:向上取整
cos:在数学中,COS称为(余弦函数),即余弦(三角函数的一种)。
Floor:向下取整
power:取次幂(例如4的2次方 就是16)
Mod:取余数(10÷3余1)
Round:四舍五入
Trunc:就是保留两位小数 没有四舍五入
Sqrt:平方根
日期函数:
--截取当前系统日期年份 select extract(year from sysdate) from dual select extract(month from sysdate) from dual select extract(day from sysdate) from dual
练习:
--获取emp表中每个人的工作年份 select ename,extract(year from sysdate)- extract(year from hiredate)as eate from emp
转换函数:
--吧数值类型变成字符串 Select TO_CHAR(123,‘$9999‘) FROM DUAL;
--吧日期类型转成字符串 SELECT TO_CHAR(hiredate,‘YYYY"年"fmMM"月"fmDD"日" HH24:MI:SS‘) FROM emp;
运行后·:
其他函数:
如果这个表里的comm是空的话 就拿o去加 不然 null加任何值 都等于null
--求每个员工的总工资(空值转换函数) select ename,sal+nvl(comm,0) as ac from emp
--如果为空的话 就取零 如果不为空就统一按照一千算 select ename,sal+nvl2(comm,1000,0) as ac from emp
nullif:
--如果左右两边的值相等 那么他的结果就是空 如果不为空 就默认取第一个值 select nullif(100,400) from dual
分析函数(排名函数):
一般大部分情况都使用第三种方法:
--分析函数(排名函数) --没有并列 select EMP.*,ROW_NUMBER() over(order by sal desc) as enum from emp --有并列 但是没第三了 实际展位的 select EMP.*,rank() over(order by sal desc) as enum from emp --有并列 并且不会被站位 正常排名 select EMP.*,DENSE_RANK() over(order by sal desc) as enum from emp
原文:https://www.cnblogs.com/www1842564021/p/12565916.html
如果您也喜欢它,动动您的小指点个赞吧