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时间当中的年、月、日、分等日期部分
--日期截取