【Data Platform】/⤷ SQL, T-SQL
[2k] COLLATE 변경 예 및 Collation 유형
디비랑
2008. 9. 7. 00:39
- /**********************************************************************************************
-- Title : [2k] COLLATE 변경 예 및 Collation 유형
-- Reference : dBRang.com
-- Key word : collate, collation
**********************************************************************************************/
/*******************
-- COLLATE 변경 예
*******************/
--sample1)
SELECT Col1, Col2 FROM Korea
UNOIN ALL
SELECT Col1 COLLATE Korean_Wansung_ci_as, Col2 COLLATE Korean_Wansung_ci_as
FROM Japan
--sample2)
SELECT *
FROM TestTab
WHERE GreekCol = LatinCol COLLATE greek_ci_as
--sample3)
SELECT
id COLLATE Korean_Wansung_ci_as
, password COLLATE Korean_Wansung_ci_as
, can_use
, downloadtype
, site
FROM member
UNION ALL
SELECT id, password, can_use, downloadtype, site
FROM loginsrv.login.dbo.member;
--sample4)
-- 쿼리를 돌리는 로컬 서버의 collate가 Japanese_CI_AS일때...
-- 원격의 collate만 적용해 주면 된다.
-- 조인 조건에서는 on절에서면 적용하면 되었다.
SELECT b.COLLECTION
, A.CODE
FROM DBUpdateJP as [A]
inner join LOGINSRV.WIPS_BOARD.DBO.TN04_DBUpdateKOR as [b]
on a.code = b.code COLLATE Korean_Wansung_CI_AS
--주)
--단 COLLATE 절은 char, varchar, text, nchar, nvarchar, ntext 데이터 형식에만 적용될 수 있다.
/*******************
-- COLLATE 유형
*******************/
/* 비교유형
- CI : 대소문자 구분 안함 (Case Insensitive)
- CS : 대소문자 구분 (Case Sensitive)
- AI : 액센트 구분 안함
- AS : 액센트 구분
- KS : 가나유형 구분
- WS : 폭 구분
- BIN : 바이너리 소트 순서
*/
--데이터 정렬 변경
--ALTER TABLE 문을 사용하여 열의 데이터 정렬을 변경할 수 있습니다.
CREATE TABLE MyTable
(PrimaryKey int PRIMARY KEY,
CharCol varchar(10) COLLATE French_CI_AS NOT NULL
)
GO
ALTER TABLE MyTable
ALTER COLUMN CharCol varchar(10) COLLATE Latin1_General_CI_AS NOT NULL
GO
ALTER DATABASE test_db COLLATE Korean_Wansung_CS_AI