У меня есть два экземпляра базы данных SQL Server (одна и та же версия) на двух компьютерах. Корректировка базы данных установлена на без учета регистра. У меня есть, например: 3 записи в таблице, которые имеют столбец name
.SQL Server: Неоднозначный порядок сортировки, когда сортировка нечувствительна к регистру
экземпляра SQL Server 1
> select name from table1 order by name
name
-----
Adam
adam
Adam
экземпляра SQL Server 2
> select name from table1 order by name
name
-----
Adam
Adam
adam
Почему сортировка неоднозначна на двух instaces одной базы данных SQL Server? Почему это? Каков алгоритм сортировки?
Дополнительный ответ, в конце концов, чтобы избежать разного порядка сортировки в нескольких экземплярах, он может использовать тай-брейк, который в этом случае может быть функцией ASCII(). Например, «A» и «a» не имеют такого же ASCII-кода, и эта функция будет полезна – veljasije
Или, если это имеет значение, он может просто вставить COLLATE Latin1_General_CS_AS в конец –
Конечно, и +1 от меня :) – veljasije