应急设备(危险品运输训练合格证)-02
乘务员初始训练培训证书-01
怎么写截取语句 ,得到 “应急设备(危险品运输训练合格证)" ,也就是得到-之前的数据、
------解决方案--------------------
- SQL code
select regexp_substr('乘务员初始训练培训证书-01', '[^-]+', 1, 1) from dual;
------解决方案--------------------
截取有几种方式 可以通过调用正则来截取字符串
oracle正则表达式从10G开始支持
内置了四个函数 REGEXP_LIKE、REGEXP_INSTR、REGEXP_SUBSTR、REGEXP_REPLACE
REGEXP_SUBSTR与SUBSTR函数相同,返回截取的子字符串
REGEXP_SUBSTR(srcstr, pattern [, position [, occurrence [, match_option]]])
------解决方案--------------------
- SQL code
select substr('应急设备(危险品运输训练合格证)-02',1,instr('应急设备(危险品运输训练合格证)-02','-')-1) from dual;
------解决方案--------------------
- SQL code
SELECT SUBSTR('应急设备(危险品运输训练合格证)-02',1,INSTR('应急设备(危险品运输训练合格证)-02','-',1,1)-1) FROM dual
------解决方案--------------------
实测成功