TRANSLATE 스칼라 함수 구문

TRANSLATE 스칼라 함수 구문은 NPS 호환 모드가 사용 중인지 여부에 따라 달라집니다.

NPS 호환 모드가 사용되는지 여부는 SQL_COMPAT 전역 변수의 설정에 따라 다릅니다.
  • SQL_COMPAT='NPS'인 경우 TRANSLATE 스칼라 함수의 구문은 SQL_COMPAT = 'NPS' 인 경우 TRANSLATE 스칼라 함수의 구문에 설명되어 있습니다. 예를 들면, 다음과 같습니다.
    translate('12345', '143', 'ax')
    다음을 리턴합니다.
    a2x5
    문자열 '12345'에서 다음을 수행하십시오.
    • 문자 1은(는) a(으)로 변환됩니다.
    • 문자 4은(는) x(으)로 변환됩니다.
    • 3 문자에 "to" 문자열의 해당 문자가 없으므로 제거됩니다.
  • 그렇지 않으면 TRANSLATE 스칼라 함수의 구문은 TRANSLATE 스칼라 함수에 설명된 것과 같습니다. 예를 들면, 다음과 같습니다.
    translate('12345', 'ax', '143')
    다음을 리턴합니다.
    a2 x5
    문자열 '12345'에서 다음을 수행하십시오.
    • 문자 1은(는) a(으)로 변환됩니다.
    • 문자 4은(는) x(으)로 변환됩니다.
    • 3 문자에 "to" 문자열의 해당 문자가 없으므로 채우기 문자로 대체됩니다. 기본 채우기 문자는 공백입니다.

SQL_COMPAT='NPS'일 때 TRANSLATE 스칼라 함수의 구문

SQL_COMPAT='NPS'인 경우, TRANSLATE 스칼라 함수의 구문은 다음과 같습니다.
구문 다이어그램 읽기시각적 구문 다이어그램 건너뛰기 TRANSLATE ( char-string-exp , from-string-exp , to-string-exp )

이 함수는 from-string-exp에도 있는 char-string-exp의 모든 문자를 to-string-exp의 대응하는 문자로 변환합니다. from-string-expto-string-exp보다 긴 경우, from-string-exp의 추가 문자 어커런스가 char-string-exp에서 제거됩니다.

char-string-exp
변환될 문자열입니다. 표현식은 내장 CHAR, VARCHAR, GRAPHIC, VARGRAPHIC, 숫자 또는 날짜 및 시간 데이터 유형인 값을 리턴해야 합니다. 값이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형이 아닌 경우, 값은 함수를 평가하기 전에 VARCHAR로 내재적으로 캐스트됩니다.
from-string-exp
char-string-exp에 있는 경우 to-string-exp의 대응하는 문자로 변환되는 일련의 문자입니다.

표현식은 내장 CHAR, VARCHAR, GRAPHIC, VARGRAPHIC, 숫자 또는 날짜 및 시간 데이터 유형인 값을 리턴해야 합니다. 값이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형이 아닌 경우, 값은 함수를 평가하기 전에 VARCHAR로 내재적으로 캐스트됩니다. from-string-exp에 중복 문자가 포함되어 있으면 발견되는 첫 번째 문자가 사용되고 중복은 무시됩니다. to-string-expfrom-string-exp보다 긴 경우 여분의 문자는 무시됩니다. to-string-exp를 지정하는 경우에는 from-string-exp도 지정해야 합니다.

to-string-exp
char-string-exp의 특정 문자가 변환되는 대상인 일련의 문자입니다.

표현식은 내장 CHAR, VARCHAR, GRAPHIC, VARGRAPHIC, 숫자 또는 날짜 및 시간 데이터 유형인 값을 리턴해야 합니다. 값이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형이 아닌 경우, 값은 함수를 평가하기 전에 VARCHAR로 내재적으로 캐스트됩니다. to-string-exp의 값이 지정되어 있지 않고 데이터 유형이 그래픽이 아닌 경우, char-string-exp의 모든 문자는 단일 문자형이 됩니다. 즉, a - z 문자는 A - Z 문자로 변환되고 다른 문자는(존재하는 경우) 그에 해당하는 대문자와 동등한 문자로 변환됩니다. 예를 들어, 코드 페이지 850에서, é는 É에 맵핑되지만, ÿ는 코드 페이지 850이 Ÿ를 포함하지 않기 때문에 맵핑되지 않습니다. 결과 문자의 코드 포인트 길이가 소스 문자의 코드 포인트 길이와 동일하지 않은 경우, 소스 문자가 변환되지 않습니다.