[Oracle] 문자열 마지막 콤마(쉼표) 제거 3가지 방법

오라클에서 쿼리문을 작성할 때 문자열의 마지막 콤마(쉼표)를 제거해야 하는 상황이 자주 발생한다. 문자열의 마지막 문자를 제거하는 방법은 딱 정해져 있지 않으며 상황에 따라서 다양한 방법을 사용할 수 있다. 아래는 마지막 문자를 조금 더 효율적으로 제거할 수 있는 방법이며, 아래의 기능을 이해한다면 다양하게 활용할 수 있을 것이다.

 

목차
  1. RTRIM() 함수로 마지막 콤마 제거
  2. REGEXP_REPLACE() 함수로 마지막 콤마 제거
  3. SUBSTR() 함수로 마지막 콤마 제거

 

RTRIM() 함수로 마지막 콤마 제거

WITH emp_t(enames) AS (
  SELECT 'BLAKE,CLARK,JONES,' FROM dual
)

SELECT enames
     , RTRIM(enames, ',') AS enames2
  FROM emp_t

 

 

RTRIM 함수를 사용하여 문자열의 마지막(오른쪽) 콤마를 제거할 수 있다.

RTRIM 함수는 오른쪽 콤마가 존재할 경우 제거를 하고 없을 경우 아무런 작업을 하지 않는다.

 

RTRIM 함수 사용 시 주의 사항

WITH emp_t(enames) AS (
  SELECT 'BLAKE,CLARK,JONES, ' FROM dual
)

SELECT enames
     , RTRIM(enames, ',')       AS enames2
     , RTRIM(enames, ', ')      AS enames3
     , RTRIM(TRIM(enames), ',') AS enames4
  FROM emp_t

 

 

RTRIM 함수를 사용하여 마지막 문자를 제거할 때는 제거할 문자가 정확히 일치해야 제거가 된다.

콤마와 공백이 항상 함께 존재한다면 콤마+공백을 제거해야 마지막 문자가 정확히 제거된다.

마지막 문자에 공백이 존재하거나 존재하지 않을 수 있다면 TRIM 함수를 활용할 수도 있다.

 

REGEXP_REPLACE() 함수로 마지막 콤마 제거

WITH emp_t(enames) AS (
  SELECT 'BLAKE,CLARK,JONES,' FROM dual
)

SELECT enames
     , REGEXP_REPLACE(enames, ',([^,]*)$', '\1') AS enames2
  FROM emp_t

 

 

REGEXP_REPLACE 함수를 사용하면 정규식을 사용하여 조금 더 다양하게 문자를 제거할 수 있다.

 

 

위의 정규식을 사용하면 콤마만 있거나, 콤마와 공백이 함께 있어도 제거할 수 있다.

 

SUBSTR() 함수로 마지막 콤마 제거

WITH emp_t(enames) AS (
  SELECT 'BLAKE,CLARK,JONES,' FROM dual
)

SELECT enames
     , SUBSTR(enames, 1, LENGTH(enames) - 1) AS enames2
  FROM emp_t

 

 

SUBSTR 함수로 마지막 문자를 제거하는 방법은 가장 쉽게 생각할 수 있는 방법이다.

문자열 마지막에 콤마가 무조건 존재한다면 위의 방식도 아무런 문제 없이 잘 작동한다.

 

SUBSTR 함수 사용 시 주의 사항

 

SUBSTR 함수를 사용하여 마지막 문자를 제거할 경우 해당 문자가 존재하지 않으면 문자열의 마지막 문제가 잘못 제거될 수 있다. RTRIM, REGEXP_REPLACE 함수는 마지막 문자가 존재하지 않을 경우 아무런 제거 작업을 수행하지 않는다. 문자열의 마지막 문자가 존재하지 않을 수 있다면 RTRIM, REGEXP_REPLACE 함수를 사용할 것을 권장한다.

 

 

[오라클] TRIM, LTRIM, RTRIM 함수 사용방법

오라클(Oracle) TRIM, LTRIM, RTRIM 함수 사용방법 TRIM 함수는 문자열의 양쪽 공백을 제거하는 기본적인 함수이다. LTRIM 함수, RTRIM 함수는 왼쪽과 오른쪽의 공백을 제거할 때 사용가능 하지만, 반복적인

gent.tistory.com

 

[오라클] SUBSTR, SUBSTRB 함수 사용방법

오라클 SUBSTR, SUBSTRB 함수 사용방법 오라클에서 SUBSTR 함수는 문자열을 자를때 사용하는 기본 함수이다.  과거 VBScript의 Left, Right, Mid와 비슷한 기능을 제공 한다. 문자 단위로 자를때는 SUBSTR 함수

gent.tistory.com

 

댓글

Designed by JB FACTORY