오라클에서 쿼리문 (substring_index)

hurryon의 이미지

MySQL 에서 작업하던 걸 오라클로 컨버전하고 있습니다. 오라클에 대해서는 전혀 알지 못하는지라...

select ltrim(substring(substring_index(`msg`, 'CVE :', -1), 1, 14)) as cve from results;

위와 같은 쿼리문을 오라클로 변경하려면 어떻게 해야 할지요? 가만히 살펴 보니 substring_index 는 MySQL 에서만 제공하는 쿼리문인거 같습니다.

익명 사용자의 이미지

http://www.psoug.org/reference/substr_instr.html
에서 instr()관련해서 보시면 되실듯합니다.

hurryon의 이미지

select ltrim(SUBSTR(msg, INSTR(msg, 'CVE :', 1, 1) + 5, 14)) as cve from results;

select host, ltrim(SUBSTR(msg, INSTR(msg, 'CVE :', 1, 1) + 5, 14)) as cve,  scriptid from (select host, msg, scriptid from results where msg LIKE '%CVE :%');

^^;