2011-10-17 2 views
1

저는 특정 순서로 정렬되어야하는 작은 유럽 회사 목록을 사용하고 있습니다. 내가 완전히 일을 시도한 SQL 데이터 정렬 중에 ...SQL Server 데이터 정렬이 원하는 방식으로 정렬하지 않습니다.

Finnish_Swedish_CI_AS
정렬 Å, Ä 올바르게 Ö하지만 Y와 u는 동일하다고 생각하지 않습니다.

Latin1_General_CI_AS
정렬 Y와 Ü 제대로 만 생각 Å A는 등 동일합니다.

는 내가 원하는처럼 정렬 된 목록입니다

  • 회사 AB, Borlänge의
  • 회사 AB, 스톡홀름
  • 회사 AB, 스웨덴어 올바른 Alvsjo의 (하지만 종류로 "... Alvsjo의 ") 라틴어
  • 회사 OÜ, 라틴와 올바른 Otepää (하지만 같은 종류의"... ​​"스웨덴어 회사 오우)
  • 회사 오우, 켈리
  • 회사 O Y, Saavonlinna

트릭을 수행하는 특정 데이터 정렬이없는 것 같습니다. 어떻게 든 특정 데이터 정렬/정렬을 강제 할 수 있습니까? 이 힌트를 얻기위한 다른 힌트가 있습니까?

+0

원하는 정렬 기준이 맞습니까? 즉, 전화 번호부에 이런 방식으로 나타 납니까? – gbn

+0

적어도 그것이 내가 생각했던 것인데, 그렇다고 확신 할 수는 없습니다. 내 생각에 액센트 센시티브는 모든 유형의 액센트를 포함하지만 명백하게는 포함되지 않습니다. – lovlka

답변

0

각 작업에 대해 하나의 데이터 정렬 만 사용할 수 있습니다. 문화를 혼합하고 싶다면, 정렬에 사용할 이름의 정규화 된 버전을 저장해야합니다.

Company OÜ, Otepää의 정규화 된 버전은 Company OU, Otepää이므로 Ü을 마치 Y처럼 처리 할 수 ​​있습니다.

+0

기본적으로 응용 프로그램 코드에 대한 액세스 권한이 없으므로 데이터베이스 관리만으로이 문제를 해결할 수 있기를 기대했습니다. 똑바로 앞으로 나아갈 수있는 해결책은 회사 OU를 사용하여 디스플레이에 사용하는 것입니다. – lovlka

+0

@lovlka : 정렬 할 때 표준화 된 값을 즉석에서 생성 할 수는 있지만 매우 효율적이지는 않습니다. – Guffa