Search
Duplicate

기본 캐릭터셋(character set) 및 콜레이션(collation) 지원 목록 보기

문서번호 : 11-762852

Document Information

최초 작성일 : 2022.06.07
최종 수정일 : 2022.06.07
이 문서는 아래 버전을 기준으로 작성되었습니다.
SinglestoreDB : 7.8

Goal

SingleStore DB가 지원하는 캐릭터셋 및 콜레이션 목록 보는 방법을 알아본다.

Solution

1. 지원하는 캐릭터셋(character set) 목록 보기

명령어
singlestore> show character set; -- 다음과 같이 SELECT를 통해서도 가능하며, 비슷한 결과이므로 이문서에서는 다루지 않음 singlestore> SELECT * FROM INFORMATION_SCHEMA.CHARACTER_SETS WHERE CHARACTER_SET_NAME = 'utf8mb4';
SQL
복사
실행 결과
+---------+-----------------------+--------------------+--------+ | Charset | Description | Default collation | Maxlen | +---------+-----------------------+--------------------+--------+ | utf8mb4 | UTF-8 Unicode | utf8mb4_general_ci | 4 | | utf8 | UTF-8 Unicode | utf8_general_ci | 3 | | binary | Binary pseudo charset | binary | 1 | +---------+-----------------------+--------------------+--------+ 3 rows in set (0.00 sec)
SQL
복사
실행 결과 설명
컬럼 설명
컬럼명
설명
Charset
캐릭터셋 명, 설정 값으로 사용
Default collation
이 캐릭터셋으로 설정시 자동으로 변경되어지는 기본 콜레이션
Maxlen
해당 캐릭터셋 1문자가 차지하는 최대 사이즈, utf8mb4의 경우 BMP외 문자일 경우 4byte 까지 차지
Charset 값 설명
binary
문자열을 이진(binary)으로 저장
Default collation : binary
utf8 (utf8mb3 의 별칭)
문자당 1~3byte를 사용하여 문자를 인코딩하는 유니코드 캐릭터셋
BMP내 문자 인코함
Default collation : utf8_general_ci
utf8mb4
문자당 1~4byte를 사용하여 문자를 인코딩하는 유니코드 캐릭터셋
BMP내 캐릭터셋 + 이모지(emoji), 고대문자, 이집트 상형문자 + BMP 외부 보조 캐릭터셋 모두 인코딩
Default collation : utf8mb4_general_ci
BMP(Basic Multilingual Plane)란? 유니코드 기본 문자 65,536개에 대해 코드를 정의한 플레인(테이블)

2. 지원하는 콜레이션(collation) 목록 보기

명령어
singlestore> show collation; -- 다음과 같이 SELECT를 통해서도 가능하며, 비슷한 결과이므로 이문서에서는 다루지 않음 singlestore> SELECT * FROM INFORMATION_SCHEMA.COLLATIONS WHERE CHARACTER_SET_NAME = 'utf8mb4';
SQL
복사
실행 결과
+-----------------------+---------+-----+---------+----------+---------+ | Collation | Charset | Id | Default | Compiled | Sortlen | +-----------------------+---------+-----+---------+----------+---------+ | utf8_general_ci | utf8 | 33 | Yes | Yes | 1 | | utf8_bin | utf8 | 83 | | Yes | 1 | | utf8_unicode_ci | utf8 | 192 | | Yes | 8 | | utf8_icelandic_ci | utf8 | 193 | | Yes | 8 | | utf8_latvian_ci | utf8 | 194 | | Yes | 8 | | utf8_romanian_ci | utf8 | 195 | | Yes | 8 | | utf8_slovenian_ci | utf8 | 196 | | Yes | 8 | | utf8_polish_ci | utf8 | 197 | | Yes | 8 | | utf8_estonian_ci | utf8 | 198 | | Yes | 8 | | utf8_spanish_ci | utf8 | 199 | | Yes | 8 | | utf8_swedish_ci | utf8 | 200 | | Yes | 8 | | utf8_turkish_ci | utf8 | 201 | | Yes | 8 | | utf8_czech_ci | utf8 | 202 | | Yes | 8 | | utf8_danish_ci | utf8 | 203 | | Yes | 8 | | utf8_lithuanian_ci | utf8 | 204 | | Yes | 8 | | utf8_slovak_ci | utf8 | 205 | | Yes | 8 | | utf8_spanish2_ci | utf8 | 206 | | Yes | 8 | | utf8_roman_ci | utf8 | 207 | | Yes | 8 | | utf8_persian_ci | utf8 | 208 | | Yes | 8 | | utf8_esperanto_ci | utf8 | 209 | | Yes | 8 | | utf8_hungarian_ci | utf8 | 210 | | Yes | 8 | | utf8_sinhala_ci | utf8 | 211 | | Yes | 8 | | utf8mb4_general_ci | utf8mb4 | 45 | Yes | Yes | 1 | | utf8mb4_bin | utf8mb4 | 46 | | Yes | 1 | | utf8mb4_unicode_ci | utf8mb4 | 224 | | Yes | 8 | | utf8mb4_icelandic_ci | utf8mb4 | 225 | | Yes | 8 | | utf8mb4_latvian_ci | utf8mb4 | 226 | | Yes | 8 | | utf8mb4_romanian_ci | utf8mb4 | 227 | | Yes | 8 | | utf8mb4_slovenian_ci | utf8mb4 | 228 | | Yes | 8 | | utf8mb4_polish_ci | utf8mb4 | 229 | | Yes | 8 | | utf8mb4_estonian_ci | utf8mb4 | 230 | | Yes | 8 | | utf8mb4_spanish_ci | utf8mb4 | 231 | | Yes | 8 | | utf8mb4_swedish_ci | utf8mb4 | 232 | | Yes | 8 | | utf8mb4_turkish_ci | utf8mb4 | 233 | | Yes | 8 | | utf8mb4_czech_ci | utf8mb4 | 234 | | Yes | 8 | | utf8mb4_danish_ci | utf8mb4 | 235 | | Yes | 8 | | utf8mb4_lithuanian_ci | utf8mb4 | 236 | | Yes | 8 | | utf8mb4_slovak_ci | utf8mb4 | 237 | | Yes | 8 | | utf8mb4_spanish2_ci | utf8mb4 | 238 | | Yes | 8 | | utf8mb4_roman_ci | utf8mb4 | 239 | | Yes | 8 | | utf8mb4_persian_ci | utf8mb4 | 240 | | Yes | 8 | | utf8mb4_esperanto_ci | utf8mb4 | 241 | | Yes | 8 | | utf8mb4_hungarian_ci | utf8mb4 | 242 | | Yes | 8 | | utf8mb4_sinhala_ci | utf8mb4 | 243 | | Yes | 8 | | binary | binary | 63 | Yes | Yes | 1 | +-----------------------+---------+-----+---------+----------+---------+ 45 rows in set (0.00 sec)
SQL
복사
실행 결과 설명
컬럼 설명
컬럼명
설명
Collation
콜레이션 명, 설정 값으로 사용
Charset
이 콜레이션을 사용할 수 있는 캐릭터셋
Id
콜레이션의 고유한 ID, 사용자 정의 콜레이션 추가시 1024~2047 사이 값 사용
Default
캐릭터셋에서의 기본 설정 여부
Sortlen
주어진 캐릭터셋의 문자열을 정렬하는 데 필요한 메모리 양(바이트)
콜레이션 설명
명명 규칙 : 캐릭터셋명 + 언어명 + 콜레이션 속성 접미사
접미사 목록
접미사
확장명
설명
_ai
accent-insensitivity
악센트를 구분하지 않음 (’O’, 'Ò’는 같음)
_as
accent-sensitivity
악센트를 구분함
_ci
case-insensitivity
대소문자를 구분하지 않음 (’A’ 와 ‘a’는 같음)
_cs
case-sensitivity
대소분자를 구분함
_bin
binary
비이진 캐릭터(char, varchar, text)일때는 멀티바이트 캐릭터의 바이트 값이 아닌 캐릭터 코드 값을 기반으로 비교함 * 주의) 아래, binary와는 다름
binary : binary 캐릭터셋의 유일한 기본 콜레이션, 무조건 바이트 값으로 비교함

References

History

일자
작성자
비고
2022.06.07
kkh