Моя таблица содержит столбец item_name, который имеет следующие значения:
abba, babba, ארץ, חלב, כלב
это английские и еврейские значения.
Мне нужен запрос MySQL, который даст мне результаты, упорядоченные сначала по значению на иврите (порядок по алфавиту на иврите), а затем на английском языке (упорядоченные по алфавиту).
это то, что я использую сейчас:
select id, item_name order by item_name
и это дает мне английские значения в первую очередь.
использование UNION — это возможность использования REGEXP …
Вы можете использовать DESC или ASC.
Попробуй с
выберите id, item_name упорядочите по item_name DESC
выберите id, item_name упорядочите по item_name ASC
Термин, который вы ищете сличение. Сортировка — это свойство, которое определяет порядок сортировки. Как вы обнаружили, сопоставления, которые MySQL поставляет со всеми символами сортировки ASCII перед символами не-ASCII. Единственный способ справиться с этим — создать собственное сопоставление, что не является тривиальным делом.
Кроме того, вопреки опубликованным комментариям нет абсолютно никаких проблем с сохранением значений на иврите и английском языке в одном поле. Конечно, я рекомендую хранить данные как UTF-8 в этих случаях.