본문 바로가기

[오라클 레퍼런스 함수] TRANSLATE ... USING - 문자열을 다른 문자 집합으로 변환 (NCHAR 또는 NVARCHAR2 사용)

by ㅇㅍㅍ 2023. 9. 2.
[오라클 레퍼런스 함수] TRANSLATE ... USING - 문자열을 다른 문자 집합으로 변환 (NCHAR 또는 NVARCHAR2 사용)
728x90

 

TRANSLATE ... USING

 

구문

TRANSLATE ( char USING
          { CHAR_CS | NCHAR_CS }
          )

 

목적

TRANSLATE ... USING 함수는 데이터베이스 문자 집합(database character set)과 국가 문자 집합(national character set) 간의 변환을 지정하는 데 사용되는 문자 집합으로 char을 변환합니다.

 

노트: TRANSLATE ... USING 함수는 주로 ANSI 호환성을 위해 지원됩니다. Oracle은 데이터를 데이터베이스 또는 국가 문자 집합으로 변환하기 위해 TO_CHARTO_NCHAR 함수를 사용하는 것이 좋다고 권장합니다. TO_CHARTO_NCHARTRANSLATE ... USING에서 허용되는 문자 데이터만 허용하는 반면 더 다양한 데이터 유형을 인수로 사용할 수 있습니다.

 

char 인수는 변환할 표현식입니다.

  • USING CHAR_CS 인수를 지정하면 char을 데이터베이스 문자 집합으로 변환합니다. 출력 데이터 유형은 VARCHAR2입니다.
  • USING NCHAR_CS 인수를 지정하면 char을 국가 문자 집합으로 변환합니다. 출력 데이터 유형은 NVARCHAR2입니다.

이 함수는 Oracle CONVERT 함수와 유사하지만 입력 또는 출력 데이터 유형 중 하나가 NCHAR 또는 NVARCHAR2로 사용될 때 CONVERT 대신 사용해야 합니다. 입력에 UCS2 코드 포인트 또는 역슬래시 문자()가 포함되어 있는 경우 UNISTR 함수를 사용하십시오.

 

참고:

  • CONVERT 및 UNISTR
  • Oracle Database Globalization Support Guide의 부록 C는 TRANSLATE ... USING의 문자 반환 값에 할당되는 콜레이션(collation)을 정의하는 정렬 파생 규칙(collation derivation rules)에 대한 정보를 제공합니다.

 

예제

다음 문장은 샘플 테이블 oe.product_descriptions에서 데이터를 사용하여 TRANSLATE ... USING 함수의 사용 예를 보여줍니다:

CREATE TABLE translate_tab (char_col  VARCHAR2(100),
                            nchar_col NVARCHAR2(50));
INSERT INTO translate_tab 
   SELECT NULL, translated_name
      FROM product_descriptions
      WHERE product_id = 3501;

SELECT * FROM translate_tab;

CHAR_COL             NCHAR_COL
-------------------- --------------------------------------------------
. . .
                     C pre SPNIX4.0 - Sys
                     C pro SPNIX4.0 - Sys
                     C til SPNIX4.0 - Sys
                     C voor SPNIX4.0 - Sys
. . .

UPDATE translate_tab 
   SET char_col = TRANSLATE (nchar_col USING CHAR_CS);

SELECT * FROM translate_tab;

CHAR_COL                  NCHAR_COL
------------------------- -------------------------
. . .
C per a SPNIX4.0 - Sys    C per a SPNIX4.0 - Sys
C pro SPNIX4.0 - Sys      C pro SPNIX4.0 - Sys
C for SPNIX4.0 - Sys      C for SPNIX4.0 - Sys
C til SPNIX4.0 - Sys      C til SPNIX4.0 - Sys
. . .

 


출처: 오라클 레퍼런스

원문 링크: Oracle TRANSLATE ... USING 함수 문서

 

반응형

댓글