plsql中常用函数



一、字符函数

 

1、LOWER (strexp) - 返回字符串,并将所有的字符小写

select lower('ABCDE') from dual

 

2、UPPER (strexp)     返回字符串,并将所有的字符大写

select upper('abcdf') from dual

 

3、INITCAP(strexp)    将字符串的(每个单词的)第一个字母变为大写,后面的小写

select initcap(' source fore') from dual

select initcap(' SOURCE FORE') from dual   -- Source Fore(如果都是大写会自动将第一个字母变为大写其他的小写)

 

4、CONCAT(strexp, strexp):  连接两个字符串

select concat(first_name,last_name) from employees

 

5、 SUBSTR(str,start_index,length): 从指定的位置截取指定长度的字符串

select substr('abcdefg',2,3) from dual

 

6、LENGTH(strexp):返回字符串的长度

select length('abcdef') from dual

 

7、 INSTR(C1,C2,I,J): 在一个字符串中搜索指定的字符,返回发现指定的字符的位置

C1:搜索的字符

C2:要搜索的字符

I:表示从哪个位置开始查找

J:查找第几次出现

select instr('aborcdoryuklhorp','or',1,2) from dual  ---7
select instr('aborcdoryuklhorp','or',6,2) from dual  ---14   

 

8、 LPAD( string1, padded_length, [ pad_string ] )   在列的左边粘贴字符

select lpad('acd',8) from dual

 

9、RPAD(粘贴字符)    RPAD? 在列的右边粘贴字符

select rpad('acd',8,'') from dual

select rpad('acdefghijklm',8,'') from dual

 

10、TRIM(str):截取字符串两端特殊字符

select   '  abd   '   from dual

select   trim('  abd   ')   from dual  

 

11、 REPLACE(str,search_str[,replace_str]): 将每次在str中出现的search_str用replace_str替换

select replace('HELOVEYOU','HE','I') from dual

 


二、转化函数

 

TO_CHAR(date,'fmt') : 转化日期为字符格式

 

  • 必须用单引号括起来,并且是大小写敏感
  • 可包含任何有效的日期格式
  • fmt值的宽度正好能容纳所有的有效数字
--输入当前的系统日期,格式为 yyyy-mm-dd
select sysdate from dual
select to_char(sysdate,'yyyy-mm-dd') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd
select to_char(sysdate,'yyyy-mon-dd') from dual

--输入当前的系统日期,格式为 yyyy-month-dd
select to_char(sysdate,'yyyy-month-dd') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd-day
select to_char(sysdate,'yyyy-mon-dd day') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd-dy
select to_char(sysdate,'yyyy-mon-dd-dy') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd-dy-d
select to_char(sysdate,'yyyy/mon/dd/dy/d') from dual

--ddspth 日期的英文显示
--输入当前的系统日期,格式为 yyyy-mon-ddspth
select to_char(sysdate,'yyyy-mon-ddspth') from dual  --2010-4月 -seventeenth

alter session set nls_language=AMERICAN;

--输入当前的系统日期,格式为 yyyy-mm-dd
select to_char(sysdate,'yyyy-mm-dd') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd
select to_char(sysdate,'yyyy-mon-dd') from dual  --2010-apr-17

--输入当前的系统日期,格式为 YYYY-MON-DD
select to_char(sysdate,'yyyy-MON-dd') from dual  --2010-APR-17

--输入当前的系统日期,格式为 YYYY-MONTH-DD
select to_char(sysdate,'YYYY-MONTH-DD') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd-day
select to_char(sysdate,'yyyy-mon-dd-day') from dual
select to_char(sysdate,'yyyy-mon-dd-DAY') from dual  --2010-apr-17-SATURDAY

--输入当前的系统日期,格式为 yyyy-mon-dd-dy
select to_char(sysdate,'yyyy-mon-dd-dy') from dual   --2010-apr-17-sat
select to_char(sysdate,'yyyy-mon-dd-DY') from dual    --2010-apr-17-SAT

--输入当前的系统日期,格式为 yyyy-mon-ddspth
select to_char(sysdate,'yyyy-mon-ddspth') from dual  --2010-apr-seventeenth

--小时 分 秒
--输入当前的系统日期,格式为 yyyy-mon-dd HH24:MI:SS
select to_char(sysdate,'yyyy-mon-dd HH24:MI:SS') from dual

--输入当前的系统日期,格式为 dd-mon-yyyy SS:HH24:MI(格式没有顺序)
--注意:使用to_char函数转化日期--->字符 格式没有顺序
select to_char(sysdate,'dd-mon-yyyy SS:HH24:MI') from dual

--输入当前的系统日期,格式为 yyyy-mon-dd HH24:MI:SS AM(PM)
--增加AM PM  --在这个格式中AM PM没有区别 ,表达的含义是一致的
select to_char(sysdate,'yyyy-mon-dd HH24:MI:SS AM') from dual
select to_char(sysdate,'yyyy-mon-dd HH24:MI:SS PM') from dual
select to_char(sysdate,'yyyy-mon-dd HH24:MI:SS PM') from dual

--输入当前的系统日期,格式为 dd of  month (19 of 1月)
--可以在格式中增加字符串,字符串用""引起来
select to_char(sysdate,'dd  of  month ') from dual



文章转载自:   plsql常用函数    http://www.studyofnet.com/news/731.html


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值