Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Неверная сортировка текстового поля при использовании "-"  [new]
Игорь Ч
Member

Откуда:
Сообщений: 429
Натолкнулся на такую проблему, что при сортировке текстового поля символ "-" как будто не учитывается.
select '-A'
union
select '-C'
union
select 'B'
order by 1


в результате получаю:
-A
B
-C

а не ожидаемое:
-A
-C
B

подскажите, можно ли как нить цивилизовано (без replace в сортировке) обойти эту ошибку (если это ошибка).
20 фев 16, 15:29    [18846623]     Ответить | Цитировать Сообщить модератору
 Re: Неверная сортировка текстового поля при использовании "-"  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
Игорь Ч,

например, так:
select '-A' collate Latin1_General_BIN 
union 
select '-C'
union 
select 'B' 
order by 1  


ps: нет, это не ошибка. это правила используемого вами коллейшена.
20 фев 16, 15:36    [18846686]     Ответить | Цитировать Сообщить модератору
 Re: Неверная сортировка текстового поля при использовании "-"  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
Игорь Ч, скачайте вот этот архивчик: 15249578
и почитайте статьи в папке 04_collation_html. Там есть очень подробные ответы на ваши вопросы - искренне рекомендую.
20 фев 16, 16:53    [18847050]     Ответить | Цитировать Сообщить модератору
 Re: Неверная сортировка текстового поля при использовании "-"  [new]
Игорь Ч
Member

Откуда:
Сообщений: 429
Спасибо, очень помогло.
20 фев 16, 17:43    [18847173]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить