Вопрос по sql – SQL запросы на строковые столбцы - сортировка по языку

1

У меня есть колонка с именем, varchar (200). В этом столбце данные могут быть заполнены на иврите и английском.

У меня есть код, который выполняет запросы к этой БД, я хочу иметь возможность сортировать результаты - сначала на иврите, а затем на английском - и другим способом.

Как это можно сделать? если вообще...

У вас есть колонка, в которой указан язык? James Hill
Нет у меня нет этой колонки, так как я не знаю это при вставке. user1136875
Если вы не знаете, когда вставляете, как вы знаете, когда выбираете? Было бы намного проще и эффективнее (и масштабируемее) иметь дополнительный столбец, идентифицирующий язык. PeteGO

Ваш Ответ

1   ответ
3

орядке иврита. Другие имена будут отсортированы в английском порядке:

select  *
from    YourTable
order by
        case 
        when name like '%[... all hebrew letters here ...]%' then name
        end collate Hebrew_CI_AS
,       name collate Latin1_General_CI_AS

В сопоставлении,CI означает регистр нечувствителен.AS означает Accent Sensitive.

Но вопрос, если я могу сделать - выбрать * из таблицы порядок по имени ххх ??? который получит сначала иврит, потом английский - в том же запросе, но отсортированный соответственно? user1136875
Я думаю, что вы можете узнать имена иврита по их характеру? Ответ обновлен, если это правда.
Выглядит хорошо для меня .... Я проверю это. Я думаю, что вы получили хороший ответ здесь user1136875

Похожие вопросы