codememo

오라클에서 문자열의 일부를 제거하는 방법

tipmemo 2023. 8. 11. 21:50
반응형

오라클에서 문자열의 일부를 제거하는 방법

입력 데이터:

abcdef_fhj_viji.dvc

예상 출력:

fhj_viji.dvc

자를 부품이 일정하지 않습니다.

사용REPLACE방법

Select REPLACE('abcdef_fhj_viji.dvc','abcde','')

테이블에 대해쿼리를 수행하려면 다음을 수행합니다.

Select REPLACE(column,'abcde','') from myTable

업데이트:

UPDATE TABLE
   SET column = REPLACE(column,'abcde','') 
select substr('abcdef_fhj_viji.dvc',instr('abcdef_fhj_viji.dvc','_')+1) from dual

그래서, 그것은 모두에게 달려 있습니다.INSTR함수, 어떤 위치와 어떤 발생에서 인덱스를 얻고 해당 인덱스를 전달할 것인지 정의합니다.SUBSTR당신의 끈을 얻기 위해.

당신이 많은 정보를 주지 않았기 때문에 제가 추측해 보겠습니다.

일부 문자열의 접두사를 삭제하려고 합니다.이렇게 하는 좋은 방법은 정규식을 사용하는 것입니다.regexp_replace라는 함수가 있는데 패턴에 따라 문자열의 하위 문자열을 찾아 다른 문자열로 바꿀 수 있습니다.PL/SQL에서 regexp_replace를 사용하여 다음과 같은 함수를 작성할 수 있습니다.

function deletePrefix(stringName in varchar2) return varchar2 is
begin
  return regexp_replace(stringName, '^[a-zA-Z]+_', '');
end;

또는 다음과 같은 일반 SQL에서 이를 사용합니다.

regexp_replace(stringName, '^[a-zA-Z]+_', '');

stringName처리할 문자열이 되는 것, 그리고^[a-zA-Z]+_접두사에 포함된 문자에 따라 부분이 달라집니다.여기에는 대문자와 소문자만 포함되어 있습니다.

언급URL : https://stackoverflow.com/questions/19852516/how-to-remove-part-of-the-string-in-oracle

반응형