SQL Server 는 정렬을 위한 수많은 데이터베이스 언어 셋을 지원하고 있습니다.
SELECT * FROM sys.fn_helpcollations() 를 수행하면 지원하는 언어를 볼 수 있습니다.
이 중에서 이번에는 Korean 으로 시작되는 정렬 문자열에 대해 알아보겠습니다.
Korean_90/100/Wansung 로도 나눠지지만 저희는 Wansung 에 초점을 맞춰서 알아보겠습니다.
Wansung 은 완성이란 뜻입니다. (사람의 이름이거나 그렇지 않습니다.ㅎㅎ)
Korean_Wansung 의 언어 정렬
SELECT name FROM sys.fn_helpcollations() WHERE NAME LIKE 'Korean_Wansung%'
위 쿼리로 검색하면 아래와 같은 값을 얻을 수 있습니다. * 로 쓰면 옆에 설명도 같이 나옵니다.
Korean_Wansung_BIN
Korean_Wansung_BIN2
Korean_Wansung_CI_AI
Korean_Wansung_CI_AI_WS
Korean_Wansung_CI_AI_KS
Korean_Wansung_CI_AI_KS_WS
Korean_Wansung_CI_AS
Korean_Wansung_CI_AS_WS
Korean_Wansung_CI_AS_KS
Korean_Wansung_CI_AS_KS_WS
Korean_Wansung_CS_AI
Korean_Wansung_CS_AI_WS
Korean_Wansung_CS_AI_KS
Korean_Wansung_CS_AI_KS_WS
Korean_Wansung_CS_AS
Korean_Wansung_CS_AS_WS
Korean_Wansung_CS_AS_KS
Korean_Wansung_CS_AS_KS_WS
BIN 은 놔두고..
앞에 C A K W 가 있고, 뒤에는 S 혹은 I 가 붙게됩니다.
작성되지 않은 옵션이 있다면 이는 I 의 옵션과 동일합니다.
예를 들면 Korean_Wansung_CI_AS 는 Korean_Wansung_CI_AS_WI_KI 입니다.
S 와 I 의 의미
S 는 Sensitive 로 활성화를 의미합니다.
I 는 Insensitivie 로 비활성화를 의미합니다.
C A K W 와 S I
앞문자 |
뒤문자 |
설명 | 예 |
C ( 대소문자 구분 ) |
S |
소문자가 대문자보다 먼저 정렬 | mozi ≠ MOZI |
|
I |
대소문자를 구분하지 않고 정렬 | mozi = MOZI |
A ( 악센트 구분 ) |
S |
악센트를 구분하여 정렬 | a ≠ ấ |
|
I |
악센트를 구분하지 않고 정렬 | a = ấ |
K ( 히라가나/가타카나 구분 ) |
S |
히라가나와 가타카나를 구분하여 정렬 ≠ | あ ≠ ア |
|
I |
히라가나와 가타카나를 구분하지 않고 정렬 | あ = ア |
W ( 전각/반각 구분) |
S |
전각과 반각 문자를 구분하여 정렬 | A = 1byte |
I | 전각과 반각 문자를 구분하지 않고 정렬 | A = 2byte |
데이터베이스 언어 셋은 윈도우 언어 셋에 영향을 받으며, 한글윈도우의 경우 Korean_Wansung_CI_AS 로 적용됩니다.
데이터베이스의 정렬 확인
해당 데이터베이스가 어느 정렬을 사용하고 있는지를 확인하기 위해서는 다음과 같은 방법들이 있습니다.
1. SSMS 에서 해당 데이터베이스를 우클릭 - 속성 - 데이터 정렬을 확인합니다.
2. sp_helpdb 'database_name' 으로 확인합니다.
EXEC sp_helpdb 'Northwind'
'SQL Server > SQL Server 기타' 카테고리의 다른 글
[MSSQL] CROSS APPLY 와 OUTER APPLY 그리고 JOIN 의 차이점 (0) | 2019.04.17 |
---|---|
[MSSQL] REVOKE 와 DENY 의 차이점 (0) | 2019.04.03 |
[MSSQL] 사이즈가 큰 하나의 로그 파일 vs 사이즈가 작은 다수의 로그 파일. 어떤걸 선택할까? (0) | 2019.04.03 |
[MSSQL] 왜 Secondary Group 이 필요한가? Secondary Group 의 역할 (0) | 2019.04.03 |
[MSSQL] CREATE TABLE AS SELECT 출력된 결과물로 테이블 생성하기 (0) | 2019.03.27 |