Что означает сопоставление в SQL и что оно делает?
sql
sql-server-2005
tsql
mysql
LOVE_KING
источник
источник
Ответы:
Сортировку можно просто рассматривать как порядок сортировки.
В английском (и это странный кузен, американский) сопоставление может быть довольно простым делом, состоящим из упорядочения по коду ASCII.
Как только вы попадаете на эти странные европейские языки со всеми их акцентами и другими функциями, сортировка меняется. Например, хотя различные акцентированные формы
a
могут существовать в разных кодовых точках, все они могут быть отсортированы, как если бы они были одной и той же буквой.источник
e
,ë
,é
,ě
иè
может быть различные буквы для целей упорядочения (но , возможно , та же буква при поиске, черт тех сумасшедших европейцев;)).42
буквами,15
в них есть диакритические знаки?where st= 'aaa'
?Кроме того, «акцентированные буквы сортируются по-разному, чем безакцентированные» в некоторых западноевропейских языках, необходимо учитывать группы букв, которые иногда также сортируются по-разному.
Традиционно на испанском языке «ch» считался буквой сам по себе, то же самое с «ll» (оба из которых представляют одну фонему), поэтому список сортировался бы так:
Обратите внимание, что все слова, начинающиеся с одиночного c, идут вместе, кроме слов, начинающихся с ch, которые идут после них, то же самое со словами, начинающимися с ll, которые идут после всех слов, начинающихся с одного l . Это порядок, который вы увидите в старых словарях и энциклопедиях, иногда даже сегодня очень консервативными организациями.
Королевская академия языка изменила это, чтобы упростить размещение испанского языка в компьютерном мире. Тем не менее, - по-прежнему считается буквой, отличной от n, и идет после нее и до o . Так что это правильно упорядоченный список:
Выбрав правильное сопоставление, вы автоматически сделаете все это за вас :-)
источник
Правила, которые говорят, как сравнивать и сортировать строки: порядок букв; имеет ли значение дело, имеют ли значение диакритические знаки и т. д.
Например, если вы хотите, чтобы все буквы были разными (скажем, если вы храните имена файлов в них
UNIX
), вы используетеUTF8_BIN
сортировку:Если вы хотите игнорировать различия регистра и диакритики (скажем, для поисковой системы), используйте
UTF8_GENERAL_CI
сопоставление:Как вы можете видеть, это сопоставление (правило сравнения) рассматривает заглавные
A
и строчныеä
буквы одинаково, игнорируя регистр и диакритические различия.источник
Сортировка определяет, как вы сортируете и сравниваете строковые значения
Например, он определяет, как бороться с
äàa
т. д.)Aa
)cote < côte < coté < côté.
cote < coté < côte < côté
источник
Сличение означает присвоение некоторого порядка для символов в алфавите, скажем, ASCII или Unicode и т. Д.
Предположим, у вас есть 3 символа в вашем алфавите - {A, B, C}. Вы можете определить некоторые примеры сопоставления для него, назначив интегральные значения для символов
На самом деле, вы можете определить! сопоставления по алфавиту размера n. Учитывая такой порядок, различные процедуры сортировки, такие как сортировки строк LSD / MSD, используют его для сортировки строк.
источник
Сортировка определяет, как ваши данные сортируются и сравниваются. Это очень важно в отношении интернационализации, например, как вы сортируете японские кандзи?
Если вы используете Google Collation и SQL Server, вы найдете множество статей, обсуждающих это!
источник
Ссылка взята из этой статьи: сопоставление - это набор правил для сравнения символов в наборе символов. Он также правил для сортировки символов, и правильный порядок двух символов варьируется от языка к языку. Collation сравнивает две строки, например, если слово больше другого, и сортирует их соответственно.
Если вы используете набор символов «latin1», вы можете использовать сортировку «latin1_swedish_ci».
Вы должны выбрать правильное сопоставление, потому что неправильное сопоставление может повлиять на производительность вашей базы данных.
источник
http://en.wikipedia.org/wiki/Collation
источник
Сортировка - это то, как SQL-сервер решает, как сортировать и сравнивать текст.
Смотрите MSDN .
источник