Udostępnij za pomocą


Nazwa zbiorcza Windows (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Określa nazwę sortacji Windows w klauzuli COLLATE SQL Server. Nazwa sortowania Windows składa się z oznaczenia sortowania oraz stylów porównawczych.

Transact-SQL konwencje składni

Składnia

<Windows_collation_name> ::=
<CollationDesignator>_<ComparisonStyle>

<ComparisonStyle> ::=
{ <CaseSensitivity>_<AccentSensitivity> [ _<KanatypeSensitive> ] [ _<WidthSensitive> ] [ _<VariationSelectorSensitive> ]
}
| { _UTF8 }
| { _BIN | _BIN2 }

Arguments

CollationDesignator

Określa podstawowe reguły sortowania używane przez sortację Windows. Podstawowe zasady kolacji obejmują:

  • Zasady sortowania i porównywania stosowane przy określaniu sortowania słownikowego. Zasady sortowania opierają się na alfabecie lub języku.
  • Strona kodowa używana do przechowywania danych varchar .

Oto kilka przykładów:

  • Latin1_General lub French: oba korzystają z kodowej strony 1252.
  • Turkish: używa strony 1254kodowej .

CaseSensitivity

CI określa niewrażliwość na wielka literę, CS określa na skale i skale.

AccentSensitivity

AI określa niewrażliwość na akcent, AS określa wrażliwość na akcent.

KanatypeSensitive

Pominięcie tej opcji określa niewrażliwość na kanatyp, określa KS wrażliwość na kanatyp.

WidthSensitivity

Pominięcie tej opcji określa niewrażliwość na szerokość, określa WS wrażliwość na szerokości.

VariationSelectorSensitivity

Dotyczy: SQL Server 2017 (14.x) i nowsze wersje

Pominięcie tej opcji określa zmienność niewrażliwą na selektor, określa VSS wrażliwość na selektor wariantów.

UTF8

Dotyczy do: SQL Server 2019 (15.x) i późniejszych wersji

Określa kodowanie UTF-8 dla uprawnionych typów danych. Aby uzyskać więcej informacji, zobacz Collation and Unicode support.

{ BIN | BIN2 }

  • BIN określa wsteczną zgodność sortowania binarnego do użycia.
  • BIN2 określa binarną kolejność sortowania, która wykorzystuje semantykę porównań punktów kodowych.

Uwagi

W zależności od wersji zestawu, niektóre punkty kodowe mogą nie mieć znaczników sortowania lub nie mieć zdefiniowanych map wielkich/małych liter. Na przykład, porównaj wyjście LOWER funkcji, gdy ma ten sam znak, ale w różnych wersjach tej samej kolacji:

SELECT NCHAR(504) COLLATE Latin1_General_CI_AS AS [Uppercase],
       NCHAR(505) COLLATE Latin1_General_CI_AS AS [Lowercase];

Oto zestaw wyników.

Nazwa kolumny Wynik
Uppercase Ǹ
Lowercase ǹ

Pierwsze zdanie pokazuje zarówno wielkie, jak i małe litery tego znaku w starszej sortacji (sortacja nie wpływa na dostępność znaków podczas pracy z danymi Unicode).

SELECT LOWER(NCHAR(504) COLLATE Latin1_General_CI_AS) AS [Version80Collation],
       LOWER(NCHAR(504) COLLATE Latin1_General_100_CI_AS) AS [Version100Collation];

Oto zestaw wyników.

Nazwa kolumny Wynik
Version80Collation Ǹ
Version100Collation ǹ

Drugie zdanie pokazuje, że wielka litera jest zwracana, gdy zestawienie to Latin1_General_CI_AS, ponieważ ten punkt kodowy nie ma zdefiniowanego mapowania małych liter w tej sortacji.

Pracując z niektórymi językami, kluczowe jest unikanie starszych kolacji. Na przykład dotyczy to Telegu.

W niektórych przypadkach kolacji Windows i SQL Server mogą generować różne plany zapytań dla tego samego zapytania.

Przykłady

Poniższa tabela opisuje przykłady nazw sortowania w Windows.

Collation Description
Latin1_General_100_CI_AS Kolacja korzysta z reguł sortowania słownika Latin1 General i mapuje je na stronę 1252kodową. Jest to sortowanie wersji _100 , które nie ma znaczenia wielkości liter (CI) ani akcentu (AS).
Estonian_CS_AS Kolizacja wykorzystuje zasady sortowania słownika estońskiego i odwzorowuje stronę 1257kodową. Jest to sortowanie wersji _80 (sugerowane przez brak numeru wersji w nazwie) i jest wrażliwe na wielka literę () orazCS akcent (AS).
Japanese_Bushu_Kakusu_140_BIN2 Sortacja wykorzystuje binarne reguły sortowania punktów kodowych i odwzorowuje na stronę 932kodową. To jest sortowanie wersji _140 , a japońskie zasady sortowania słownika Bushu Kakusu są ignorowane.

Sortowania systemu Windows

Aby wymienić zestawienia Windows obsługiwane przez Twoją instancję SQL Servera, wykonaj następujące zapytanie.

SELECT *
FROM sys.fn_helpcollations()
WHERE [name] NOT LIKE N'SQL%';