10.1.9.2 CONVERT() and CAST()
CONVERT()
을 사용하면 다른 문자 집합간에 데이터를 변환 할 수 있습니다. 구문은 다음과 같습니다.
CONVERT() and CAST()
MySQL에서는 트랜스 코딩 이름은 해당 문자 집합 이름과 동일합니다.
예 :
SELECT CONVERT(_latin1'Müller' USING utf8); INSERT INTO utf8table (utf8column) SELECT CONVERT(latin1field USING utf8) FROM latin1table;
CONVERT(... USING ...)
은 표준 SQL의 사양에 따라 구현되어 있습니다.
CAST()
를 사용하여 문자열을 다른 문자 집합으로 변환 할 수 있습니다. 구문은 다음과 같습니다.
CAST(character_string
AScharacter_data_type
CHARACTER SETcharset_name
)
예 :
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8);
CHARACTER SET
를 지정하지 않고 CAST()
를 사용하면 문자 셋과 콜레 션은 character_set_connection
및 collation_connection
시스템 변수로 정의됩니다. CHARACTER SET X
를 지정하고 CAST()
를 사용하면 문자 세트는 X
데이터 정렬은 X
의 기본 데이터 정렬됩니다.
CONVERT()
또는 CAST()
호출 내에서는 COLLATE
절을 사용할 수 없지만 호출 외에서는 사용할 수 있습니다. 예를 들어, CAST(... COLLATE ...)
은 무효이지만, CAST(...) COLLATE ...
은 유효합니다.
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8) COLLATE utf8_bin;