ORACLE 常用的函数及语法集合

开发工具与关键技术:Oracle sql*plus PLSQL Developer
作者:华境聪
撰写时间: 2019年04月02日

Escape:转义符
 专用于like 使用。在特俗符号之前加\,然后用escape '\' 标识起来。以此证明\,后面跟的这个是真实的特殊字符。

Where:过滤条件;

Between ...and...:在什么和什么之间;

In(...,....) :在括号里的值其中一个;

Like '%\_%' Escape '\' :选择类似的值'“%”:代表一个或多个字符;“_”:代表一个字符' escape :标识特殊字符:

Not :否

Is null :为空;

Order by (asc:升序;desc:降序;):排序;

Lower() :转为小写输出;

upper() :转为大写输出;

Initcap() :转为首字母大写输出;

Concat('','') :合并两个字符输出;

Substr('',1,5) :截取第一个字符到第五个字符输出;

Length('') :获取字符的长度数量输出;

Instr('hello','e') :获取 e 的位置输出;

Lpad(salary,10,'*') :*****24000(左边以*号开头,凑够10位数);

Rpad(salary,10,'*') :24000*****(右边以*号结尾,凑够10位数);

Trim('e' from 'hello') : hllo;去掉 e 输出;

Replace('hello','e','h') : hhllo;将 e 替换为 h 输出;  

Round(45.926,2) : 四舍五入保留小数点后两位;

Trunc(45.926,2) : 不写 的话,默认截断小数点的后面 结果 45;写了 2 的话,小数点后第三位数开始截断 结果 45.92;写了 -1 的话,截断小数点前一位数为0,且去掉后面小数 结果 40;

Mod(1600,300) : 求余1600/300 结果输出100;

SysDate :当前日期时间;

Months_Between('11-6月-95','11-3月-94') : 计算相差月份;

Add_Months('11-6月-95',6):加月数;

Sysdate + Numtodsinterval(1,'hour') : 表示几个小时;(hour : 时 ; minute : 分;second :秒;);

Numtoyminterval(1,'month') : 表示几个月数;

Next_Day('22-2月-19','星期五') : 计算出(22-2月-19)的下个星期的星期五是几号;

Last_Day('01-4月-95') : 计算出4月的月底是几号;

ROUND(to_date('13-05-22','yyyy-mm-dd'),'month') :查询日期时,使用round函数舍到月份. 结果为:01-6月-13

ROUND(to_date('13-07-22','yyyy-mm-dd'),'year') :查询日期时,使用round函数舍到年 结果为:01-1月-14
To_Number('123,123','999,999') :将字符串转换成数值型格式;

NVL(commission,0) : 将空值转换为特定的值;

NVL2 (expr1, expr2, expr3) : expr1不为NULL,返回expr2;为NULL,返回expr3。

Nullif(expr1 , expr2) : 如果expr1 和 expr2 相等 则 返回 null ;不相等 则 返回 expr1;

Coalesce(expression,value1,value2……,valuen) : 函数的第一个参数expression为待检测的表达式,而其后的参数个数不定;
函数将会返回包括expression在内的所有参数中的第一个非空表达式。
select case  when salary < 1000 then 0 end "利息"
from employees; //也就是if/else的应用、
Avg()://平均;Sum()://总数;Count()://条数;Max()://最大值;Min()://最小值;<忽略空值>
Distinct():去重复行;
Any():和子查询任一值比较;All():和子查询所有值比较
intersect: 交集
union :并集去重复
union ALL:并集不去重复
minus :差集(两个相同抵消,不同值的话一律返回上面的那个)
rownum :按序列号排序
row_number()over(partition by order by ):分区排序

以上是本人对Oracle的一些函数及语法总结,喜欢的朋友可以参考一下

猜你喜欢

转载自blog.csdn.net/qq_41979469/article/details/88964408