콜레이션(Collation)

    728x90



    3개의 파트로 구성된 콜레이션 이름


    1. 첫번쨰 파트는 문자집합의 이름이다.

    2. 두 번째 파트는 해당 문자집합의 하위 분류를 나타낸다.

    3. 세 번째 파트는 대문자나 소문자의 구분 여부를 나타낸다. 세번째 파트가 "ci" 이면 대소문자를 구분하지않는 콜레이션을 의미하며, "cs"이면 대소문자를 별도의 문자로 구분하는 콜레이션이다.


    2개의 파트로 구성된 콜레이션 이름


    1. 첫 번째 파트는 마찬가지로 문자집합의 이름이다.

    2. 두 번째 파트는 항상 bin 이라는 키워드가 사용된다. 여기서 bin 은 이진 데이터를 의미하며, 이진 데이터로 관리되는 문자열 칼럼은 별도의 콜레이션을가지지 않는다. 콜레이션이 "XXX_bin" 이라면 비교 및 정렬은 실제 문자 데이터의 바이트 값을 기준으로 수행된다.


    콜레이션이 대소문자를 구분하지 않는다고 해서 실제 칼럼에 저장되는 값이 모두 소문자나 대문자로 변환되어 저장되는것은 아니다.

    콜레이션과 관계없이 입력된 데이터의 대소문자는 별도의 변환 없이 그대로 저장된다.


    조인을 수행하는 양쪽테이블의 칼럼이 문자집합이나 콜레이션이 다르다면 비교작업에서 콜레이션의 변환이 필요하기 때문에 인덱스를 효율적으로 이용하지 못할때가 많으므로 주의한다.

    Posted by 천상나타