ORACLE 常用函数学习笔记

1.字符串截取方法

--5
SELECT INSTR('8.30~9.00', '~') FROM dual;
--8.30
SELECT SUBSTR ('8.30~9.00', 0, INSTR ('8.30~9.00', '~',1,1)-1) AS time FROM dual;
--18.30
SELECT SUBSTR ('18.30~19.00', 0, INSTR ('18.30~19.00', '~',1,1)-1) AS appointstime FROM dual;

2.字符串转数字

to_number(SUBSTR (appointstime, 0, INSTR (appointstime, '~',1,1)-1)) 

--获取某个字段的最大值+1需要确认字段是否为数字类型,如果是字符串类型,获取最大值大于10之后将存在问题,返回值一直==10

MAX(to_number(sortno))+1

3.日志输出

dbms_output.put_line( :new.a);

dbms_output.put_line( '输出日志');

4.日期转换

select to_date(sysdate,'yyyy-mm-dd') Today from dual;
select to_char(sysdate,'yyyy-MM-dd hh24:mi:ss') Today from dual;
select to_date(sysdate,'yyyy-mm-dd hh24:mi:ss') Today from dual;
select TRUNC(to_date(sysdate,'yyyy-mm-dd')) Today from dual;

5.字符串补充

RPAD(X,length[,Y])——对字符串X进行右补字符Y使字符串长度达到length长度

LPAD(X,length[,Y])——对字符串X进行左补字符Y使字符串长度达到length长度

示例如下所示:

--001——对字符串1,使用0进行右侧补齐3位, 即 001
SELECT LPAD('1',3,'0') from DUAL;
--100——对字符串1,使用0进行左侧补齐3位,即100
SELECT RPAD('1',3,'0') from DUAL;

6.字符串替换

REPLACE(X,old,new)——查找字符串X中old字符,并利用new字符替换

7.常用日期函数

--返回当前日期

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'from dual;

--返回当前月份最后一天

select last_day(sysdate) from dual;

--EXTRACT(time)函数:返回指定time时间当中的年、月、日、分等日期部分

 --日期截取

原文地址:https://www.cnblogs.com/YYkun/p/11453199.html