Имя параметров сортировки Windows (Transact-SQL)
Задает имя параметров сортировки Windows с помощью предложения COLLATE в SQL Server 2012. Имя параметра сортировки Windows состоит из двух частей: обозначения параметров сортировки и стиля сравнения.
Синтаксические обозначения в Transact-SQL
Синтаксис
<Windows_collation_name> :: =
CollationDesignator_<ComparisonStyle>
<ComparisonStyle> :: =
{ CaseSensitivity_AccentSensitivity
[ _KanatypeSensitive ] [ _WidthSensitive ] }
| { _BIN | _BIN2 }
Аргументы
CollationDesignator
Указывает базовые параметры сортировки, используемые параметрами сортировки Windows. Правила базовых параметров сортировки отвечают за следующее.Правила сортировки, применяемые, когда определена словарная сортировка. Правила сортировки основаны на алфавите или языке.
Кодовую страницу, используемую для хранения символьных данных не в Юникоде.
Некоторые примеры.
Latin1_General или French: оба порядка сортировки используют кодовую страницу 1252.
Турецкий язык использует кодовую страницу 1254.
CaseSensitivity
CI определяет нечувствительность к регистру, CS определяет чувствительность к регистру.AccentSensitivity
AI означает, что диакритические знаки пропускаются, AS показывает, что они учитываются.KanatypeSensitive
Omitted определяет порядок следования без учета типов японской азбуки, KS определяет порядок следования, учитывающий тип японской азбуки.WidthSensitivity
Omitted определяет нечувствительность к ширине символов, WS определяет чувствительность к ширине символов.BIN
Указывает подлежащий использованию двоичный порядок сортировки, применяющийся для обеспечения обратной совместимости.BIN2
Определяет двоичный порядок сортировки, использующий семантику сравнения кодовых точек.
Замечания
В зависимости от версии сортировок некоторые кодовые точки могут быть неопределенными. Например, сравним:
SELECT LOWER(nchar(504) COLLATE Latin1_General_CI_AS);
SELECT LOWER (nchar(504) COLLATE Latin1_General_100_CI_AS);
GO
Первая строка возвращает символ верхнего регистра при сортировке Latin1_General_CI_AS, поскольку эта кодовая точка не определена в этой сортировке.
При работе с определенными языками может быть важно избегать старых сортировок. Это верно, к примеру, для языка телугу.
В некоторых случаях сортировки Windows и сортировки SQL Server могут формировать разные планы запросов для одного и того же запроса.
Примеры
Ниже приведены некоторые примеры имен параметров сортировки Windows.
- Latin1_General_100_
Параметры сортировки используют правила сортировки словаря Latin1 General, кодовую страницу 1252. Без учета регистра, с учетом диакритических знаков. Параметры сортировки используют правила сортировки словаря Latin1 General и ставят в соответствие кодовую страницу 1252. Показывает номер версии параметров сортировки, если это параметры сортировки Windows: _90 или _100. Без учета регистра (CI), с учетом диакритических знаков (AS).
Estonian_CS_AS
Параметры сортировки используют правила сортировки словаря Estonian, кодовую страницу 1257. С учетом регистра, с учетом диакритических знаков.
Latin1_General_BIN
Параметры сортировки используют кодовую страницу 1252 и правила двоичной сортировки. Правила сортировки словаря Latin1 General не учитываются.
Параметры сортировки Windows
Для формирования списка параметров сортировки Windows, которые поддерживает данный экземпляр SQL Server, выполните следующий запрос.
SELECT * FROM sys.fn_helpcollations() WHERE name NOT LIKE 'SQL%';
В следующей таблице приведены все параметры сортировки Windows, поддерживаемые в SQL Server 2012.
Локаль Windows |
Версия параметров сортировки 100 |
Версия параметров сортировки 90 |
---|---|---|
Эльзасский (Франция) |
Latin1_General_100_ |
Недоступно |
Амхарик (Эфиопия) |
Latin1_General_100_ |
Недоступно |
Армянский (Армения) |
Cyrillic_General_100_ |
Недоступно |
Ассамский (Индия) |
Assamese_100_1 |
Недоступно |
Башкирский (Россия) |
Bashkir_100_ |
Недоступно |
Баскский |
Latin1_General_100_ |
Недоступно |
Бенгальский (Бангладеш) |
Bengali_100_1 |
Недоступно |
Бенгальский (Индия) |
Bengali_100_1 |
Недоступно |
Боснийский (Босния и Герцеговина, кириллица) |
Bosnian_Cyrillic_100_ |
Недоступно |
Боснийский (Босния и Герцеговина, латиница) |
Bosnian_Latin_100_ |
Недоступно |
Бретонский (Франция) |
Breton_100_ |
Недоступно |
Китайский (Макао, САР) |
Chinese_Traditional_Pinyin_100_ |
Недоступно |
Китайский (Макао, САР) |
Chinese_Traditional_Stroke_Order_100_ |
Недоступно |
Китайский (Сингапур) |
Chinese_Simplified_Stroke_Order_100_ |
Недоступно |
Корсиканский (Франция) |
Corsican_100_ |
Недоступно |
Хорватский (Босния и Герцеговина, латиница) |
Croatian_100_ |
Недоступно |
Дари (Афганистан) |
Dari_100_ |
Недоступно |
Английский (Индия) |
Latin1_General_100_ |
Недоступно |
Английский (Малайзия) |
Latin1_General_100_ |
Недоступно |
Английский (Сингапур) |
Latin1_General_100_ |
Недоступно |
Филиппинский (Филиппины) |
Latin1_General_100_ |
Недоступно |
Фризский (Нидерланды) |
Frisian_100_ |
Недоступно |
Грузинский (Грузия) |
Cyrillic_General_100_ |
Недоступно |
Гренландский (Гренландия) |
Danish_Greenlandic_100_ |
Недоступно |
Гуджарати (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Хауса (Нигерия, латиница) |
Latin1_General_100_ |
Недоступно |
Хинди (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Игбо (Нигерия) |
Latin1_General_100_ |
Недоступно |
Инуитский (Канада, латиница) |
Latin1_General_100_ |
Недоступно |
Инуитский (Канада) |
Latin1_General_100_ |
Недоступно |
Ирландский (Ирландия) |
Latin1_General_100_ |
Недоступно |
Японский (Япония) |
Japanese_XJIS_100_ |
Japanese_90_, Japanese_ |
Японский (Япония) |
Japanese_Bushu_Kakusu_100_ |
Недоступно |
Каннада (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Кхмерский (Камбоджа) |
Khmer_100_1 |
Недоступно |
Киче (Гватемала) |
Modern_Spanish_100_ |
Недоступно |
Киньяруанда (Руанда) |
Latin1_General_100_ |
Недоступно |
Конкани (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Лаосский (Лаосская Народно-Демократическая Республика) |
Lao_100_1 |
Недоступно |
Нижний Сорбский (Германия) |
Latin1_General_100_ |
Недоступно |
Люксембургский (Люксембург) |
Latin1_General_100_ |
Недоступно |
Малайялам (Индия) |
Indic_General_100_1 |
Недоступно |
Мальтийский (Мальта) |
Maltese_100_ |
Недоступно |
Маорийский (Новая Зеландия) |
Maori_100_ |
Недоступно |
Мапудунгун (Чили) |
Mapudungan_100_ |
Недоступно |
Маратхи (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Могавк (Канада) |
Mohawk_100_ |
Недоступно |
Монгольский (КНР) |
Cyrillic_General_100_ |
Недоступно |
Непальский (Непал) |
Nepali_100_1 |
Недоступно |
Норвежский (букмол, Норвегия) |
Norwegian_100_ |
Недоступно |
Норвежский (нюнорск/ландсмол, Норвегия) |
Norwegian_100_ |
Недоступно |
Окситанский (Франция) |
French_100_ |
Недоступно |
Ория (Индия) |
Indic_General_100_1 |
Недоступно |
Пушту (Афганистан) |
Pashto_100_1 |
Недоступно |
Персидский (Иран) |
Persian_100_ |
Недоступно |
Панджабский (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Кечуа (Боливия) |
Latin1_General_100_ |
Недоступно |
Кечуа (Эквадор) |
Latin1_General_100_ |
Недоступно |
Кечуа (Перу) |
Latin1_General_100_ |
Недоступно |
Романш (Швейцария) |
Romansh_100_ |
Недоступно |
Саамский (Инари, Финляндия) |
Sami_Sweden_Finland_100_ |
Недоступно |
Саамский (Луле, Норвегия) |
Sami_Norway_100_ |
Недоступно |
Саамский (Луле, Швеция) |
Sami_Sweden_Finland_100_ |
Недоступно |
Саамский (Северный, Финляндия) |
Sami_Sweden_Finland_100_ |
Недоступно |
Саамский (Северный, Норвегия) |
Sami_Norway_100_ |
Недоступно |
Саамский (Северный, Швеция) |
Sami_Sweden_Finland_100_ |
Недоступно |
Саамский (Скольт, Финляндия) |
Sami_Sweden_Finland_100_ |
Недоступно |
Саамский (Южный, Норвегия) |
Sami_Norway_100_ |
Недоступно |
Саамский (Южный, Швеция) |
Sami_Sweden_Finland_100_ |
Недоступно |
Санскрит (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Сербский (Босния и Герцеговина, кириллица) |
Serbian_Cyrillic_100_ |
Недоступно |
Сербский (Босния и Герцеговина, латиница) |
Serbian_Latin_100_ |
Недоступно |
Сербский (Сербия, кириллица) |
Serbian_Cyrillic_100_ |
Недоступно |
Сербский (Сербия, латиница) |
Serbian_Latin_100_ |
Недоступно |
Сесуто са Лебоа/Северный Суто (Южная Африка) |
Latin1_General_100_ |
Недоступно |
Сетсвана/Тсвана (Южная Африка) |
Latin1_General_100_ |
Недоступно |
Синхала (Шри-Ланка) |
Indic_General_100_1 |
Недоступно |
Суахили (Кения) |
Latin1_General_100_ |
Недоступно |
Сирийский (Сирия) |
Syriac_100_1 |
Syriac_90_ |
Таджикский (Таджикистан) |
Cyrillic_General_100_ |
Недоступно |
Тамазихт (Алжир, латиница) |
Tamazight_100_ |
Недоступно |
Тамильский (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Телугу (Индия) |
Indic_General_100_1 |
Indic_General_90_ |
Тибетский (КНР) |
Tibetan_100_1 |
Недоступно |
Туркменский (Туркменистан) |
Turkmen_100_ |
Недоступно |
Уйгурский (КНР) |
Uighur_100_ |
Недоступно |
Верхний Сорбский (Германия) |
Upper_Sorbian_100_ |
Недоступно |
Урду (Пакистан) |
Urdu_100_ |
Недоступно |
Валлийский (Великобритания) |
Welsh_100_ |
Недоступно |
Волоф (Сенегал) |
French_100_ |
Недоступно |
Коса/исиКоса (Южная Африка) |
Latin1_General_100_ |
Недоступно |
Якутский (Россия) |
Yakut_100_ |
Недоступно |
Ий (КНР) |
Latin1_General_100_ |
Недоступно |
Йоруба (Нигерия) |
Latin1_General_100_ |
Недоступно |
Зулу/исиЗулу (Южная Африка) |
Latin1_General_100_ |
Недоступно |
Устарело. Отсутствует на уровне сервера в SQL Server 2008 и более поздних версиях |
Хинди |
Хинди |
Устарело. Отсутствует на уровне сервера в SQL Server 2008 и более поздних версиях |
Korean_Wansung_Unicode |
Korean_Wansung_Unicode |
Устарело. Отсутствует на уровне сервера в SQL Server 2008 и более поздних версиях |
Lithuanian_Classic |
Lithuanian_Classic |
Устарело. Отсутствует на уровне сервера в SQL Server 2008 и более поздних версиях |
Macedonian |
Macedonian |
1 Параметры сортировки Windows «Только для Юникода» можно применять только к данным на уровне столбца или уровне выражения. Они не могут использоваться в качестве параметров сортировки базы данных или сервера.
2 Как и при сортировке в Китайском (Тайвань), в Китайском (Макао) используются правила упрощенного китайского языка, но в отличие от Китайского (Тайвань) используется кодовая страница 950.
См. также
Справочник
CREATE DATABASE (Transact-SQL)
Инструкция CREATE TABLE (Transact-SQL)
DECLARE @local\_variable (Transact-SQL)
sys.fn_helpcollations (Transact-SQL)