본문 바로가기
🎪 놀고있네/MS SQL

[SQL Server] Collation, 언어별 정렬하기

by 냥장판 2019. 11. 15.
반응형

 

목표: 새로운 멤버를 추가하고 정렬을 해보자

요약

  1. 데이터 입력하기
  2. Collation 설정 확인하기
  3. Collation 설정 변경하기
  4. 정렬하기

DB 생성, Table 생성, 데이터 삽입은 아래 게시글을 참고하기 바란다

2019/11/13 - [놀고있네/MS SQL] - [SQL Server] DB 생성, Table 생성, 데이터 삽입

 

[SQL Server] DB 생성, Table 생성, 데이터 삽입

목표: DB 생성, Table 생성, 데이터 삽입 요약 Database 생성하기 Table 생성하기 데이터 삽입하기 굉장히 사심이 들어간 테이블이다.😆😆 이대로 만들어 보자 훗 Database name: TutorialBTSDB Table name: BTS..

miaow-miaow.tistory.com


 

펭하! 제 8의 멤버이십니다 🐧🐧

 

 

 

1. 데이터 입력하기

Studio상에서 Row 추가하기 위한 방법은 두 가지가 있다

  1. [Edit Top 200 Rows] 행 데이터 업데이트
    • TutorialBTSDB > dbo.BTS_Members > Column > 우클릭 > [Edit Top 200 Rows]
  2. INSERT INTO - VALUES - 사용하기

편한 방법을 사용하면 됨

 

 

2. Collation 설정 확인하기

현재 데이터베이스가 사용중인 Collation을 확인하고 싶다면 아래와 같이 쿼리를 입력한다.

SQL Server 데이터 정렬은 기본적으로 Windows 데이터 정렬방식을 따른다고함

▼ 소스코드 보기

더보기

-- 데이터베이스(e.g. TutorialBTSDB)의 현재 데이터 정렬 확인하기
SELECT CONVERT (VARCHAR(50), DATABASEPROPERTYEX('TutorialBTSDB','collation'));

-- 정렬(ORDER BY)
SELECT * FROM dbo.BTS_Members ORDER BY Name ASC;

 

- TutorialBTSDB의 현재 데이터 정렬 확인 결과: Korean_Wansung_CI_AS 를 사용하고 있음

- Korean_Wansung_CI_AS Collation으로 Name정렬한 결과: 김명중 > 펭수 > ... > V

 

SQL Server에서 제공하는 모든 Collation을 확인하려면 아래를 참고바람

3. Collation 설정 변경하기

▼ 소스코드 보기

더보기

-- 데이터베이스(e.g. TutorialBTSDB) 정렬 변경하기
ALTER DATABASE TutorialBTSDB COLLATE SQL_Latin1_General_CP1_CI_AS;

- 영어(미국)의 기본적인 데이터 정렬 시 디폴드 값: SQL_Latin1_General_CP1_CI_AS

변경 확인

 

4. 정렬하기

- 한글(한국) 정렬: 김명중 > 펭수 > ... > V

- 영어(미국) 정렬: J-Hope > ... > 김명중 > 펭수

 

▼ 소스코드 보기

더보기

-- 한국어 정렬
SELECT * FROM dbo.BTS_Members
ORDER BY Name
COLLATE Korean_Wansung_CI_AS  ASC;
GO

-- 영어(미국, Latin 1) 정렬
SELECT * FROM dbo.BTS_Members
ORDER BY Name
COLLATE SQL_Latin1_General_CP1_CI_AS  ASC;
GO

 

국가별로 정렬 방식이 상이할 때 적절히 사용하면 됨


 

Emoji 입력 TIP

 

Windows에서 이모지(Emoji) 패널 사용 가능해(RS5 이상이라면)
어떤 Text 창에서든 단축키로 이모지 입력 가능해
단축키는 Win 키 + . 키와 Win 키 + ; 키 두 개


 

 

반응형

댓글