본문으로 건너뛰기
최종 수정: 에

REPLACE_EMPTY

설명​

REPLACE_EMPTY 함수는 문자열의 일부 문자를 다른 문자로 바꾸는 데 사용됩니다. REPLACE 함수와 달리, old가 빈 문자열이면 new 문자열을 str 문자열의 각 문자 앞과 str 문자열의 끝에 삽입합니다.

이 함수는 주로 Presto 및 Trino와의 호환성을 위해 사용되며, Presto 및 Trino의 REPLACE() 함수와 동작이 완전히 동일합니다. 버전 2.1.5부터 지원됩니다.

구문​

REPLACE_EMPTY ( <str>, <old>, <new> )

매개변수​

매개변수설명
<str>문자를 바꿀 대상 문자열입니다.
<old>바꿀 부분 문자열입니다. <old>가 <str>에 없으면 바꾸지 않습니다. <old>가 빈 문자열이면 <new> 문자열을 str 문자열의 각 문자 앞에 삽입합니다.
<new><old>를 대체할 새 부분 문자열입니다.

반환값​

부분 문자열을 바꾼 새 문자열을 반환합니다. 특수한 경우는 다음과 같습니다.

  • 매개변수 중 하나라도 NULL이면 NULL을 반환합니다.
  • <old>가 빈 문자열이면 <new> 문자열을 <str> 문자열의 각 문자 앞에 삽입한 문자열을 반환합니다.

예제​

SELECT replace('hello world', 'world', 'universe');
+---------------------------------------------+
| replace('hello world', 'world', 'universe') |
+---------------------------------------------+
| hello universe |
+---------------------------------------------+
SELECT replace_empty("abc", '', 'xyz');
+---------------------------------+
| replace_empty('abc', '', 'xyz') |
+---------------------------------+
| xyzaxyzbxyzcxyz |
+---------------------------------+
SELECT replace_empty("", "", "xyz");
+------------------------------+
| replace_empty('', '', 'xyz') |
+------------------------------+
| xyz |
+------------------------------+