字符函数操作

--数据库中是从1开始 下标
--去掉null  0
select sal,comm,sal+nvl(comm,0) "实际工资" from emp;
--小数点 向上取 正数向后  负数向前
select round(6666.6666,2) from dual;
--直接去掉
select trunc(5555.55555,2) from dual;
--截取字符串 n从几位开始 m取几位 
select substr('holle word',n,m) from dual;
 --从左边对齐 n位数 m 代替字符
 select lpad(ename,n,m) from emp;
 --去掉字符 只能是首 尾
 select trim(' d s ') from dual;
 --指定去掉字符 前 
 select trim(leading 'a' from 'abcaa') from dual; 
 --后
 select trim(trailing'a' from 'abcaa') from dual; 
 
--时间 函数转换  距离几个月
select months_between(date'2014-5-5',sysdate) from dual;
--距离指定时间 相差天数
select date'2014-2-14'-sysdate from dual;
--求前面几个月的今天
select add_months(sysdate,-3) from dual;
--指定 年 月 日 查询
select next_day(sysdate, '星期一') from dual;
select round(sysdate, 'MONTH') from dual;
select trunc(sysdate, 'year') from dual;
--cast强制转换
select 5+cast('55' as number(2)) from dual;
--查询指定时间
select to_char(sysdate,'fm yyyy"年"mm"月"dd"日" day hh24 pm ') from dual;
--DDL、DCL自动提交;但DML不会自动提交(只是本会话可见)
--排序状态 相同的值 不同的排法
select sal,row_number() over(order by sal desc), 
      rank() over(order by sal desc),
      dense_rank() over(order by sal desc)
from emp;
--decode判断函数 给值 相当与 case when then 
select decode 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值