Oracle 单行函数

单行函数

  字符函数

大小写控制函数


字符控制函数

  -- substr(a,b)  从a中,从b位开始取到最后


 -- substr(a,b,c) 从a中, 第b个开始取, 取到c位


--  length  字符的长度   

-- lengthb 字节的长度(在gbk 编码表下一个中文字符是站2个字节的 , 在utf-8 编码下, 中文是3个字节的, 数字英文占一个字节) 

-- instr (a,b) 在a中查找b  返回位置索引 


 -- lpad  左c补充 , rpad 右填充   ( 补全 为10 位数字 )

 

  -- trim 去掉前后指定的字符  


-- replace 替换


数值函数

round  四舍五入 

trunc 截断  

mod 取余 



round trunc 也可以是日期函数

 日期函数

 在MySQL中表示年月日 , data   表示 年月日十分秒 用datetime  ;

但是在oracle 中没有dateTime 这个类型, Oracle 中既有日期也有时间的意思  



to_char ()  把什么格式格式化为什么格式

查看所有的员工的的工龄


日期是不能相加的 因为没有意义的 

日期函数 

months_between   计算两个月份之间的相差的月数 ; 


add_months  向指定的日期加上若干个月数  


next_day    指定日期的下一个日期  分布式数据库,  应用场景: 比如每周把,数据库中的数据拷贝到另一个表中, 就用这个函数, 进行自动完成, 异地容灾策略,比如地震火灾, 把设备弄坏了, 就要用异地容灾技术, 这样就可以使数据不丢失 911  ; 

比如在北京的oracle 数据库 每个星期一把数据拷贝到上海的oracle 数据库中, 实现分布式数据库的方法,  

1. 使用触发器

2. 使用快照 (第三天学习)


last_day   本月的最后一天 


round    日期的四舍五入


trunc  日期的截断 


转换函数 

隐式转换

隐士数据类型转换有oracle 自动转换

显示转换 


日期到字符串



数字到字符串



查询员工的薪水


字符串到数字

通用函数

nvl2 (); - nvl2(abc) 当a=null 的时候, 返回c; h否则返回b


nullif();  -- nullif(a,b) 当a=b 时候, 返回null , 否则放回a


-- coalesce  从左往右,找到第一个不为null的值 


条件表达式

给指定的人涨工资


语法格式:(这种语法, 是根据sql99进行定义的, 在关系型数据库都是用, )

case 列  when 匹配的行 then  执行的代码

                            when 匹配的行 then  执行的代码

                        else  执行代码

end  (必须加上结束)

DECODE函数(这个是根据java的语法格式oracle的独有的语法)


spool off 结束打印保存的sql 语句






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值