
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.137.177.102] |
![]() |
|
![]() | Данный раздел не предназначается для обсуждения, здесь собираются только вопросы-ответы по тематике баз данных. Если есть желание обсудить какие-то вопросы, связанные с тематикой баз данных - перейдите в соответствующие разделы "Базы данных: общие вопросы" или "Базы данных: SQL". |
Сообщ.
#1
,
|
|
|
Делаю запрос
![]() ![]() SELECT ...,Name,... FROM table WHERE .... ORDER BY Name ASC Хотелось бы получить ряды отсортированные по возрастанию в алфавитном порядке. Но он мне какую-то чушь гонит. Сначала на "А", потом на "Г", потом на "В", потом опять на "А". Где нормально, где вообще в разнобой. Я тут подумал и понял - у него какая-то своя технология сортировки. Вообщем, я понял, что мне нужно: нужно сортировка, но по первому символу поля Name. Как это сделать? Что-то типа "ORDER BY Name[1] ASC". А то сейчас получается так, что пришлось мускульную сортировку забыть и сортироввать по CustomSort в списке, а у него скорость сортировки оставляет желать лучшего. |
Сообщ.
#2
,
|
|
|
А какой язык выбран для мускуля? В переменных сервака? На сколько я понимаю, сортировать ты хочешь русский текст. Сделать это правильно можно только, если использовать русскую локализацию. Я знаю, как это выбрать глобально для всего сервера (в конфиге мускуля должен быть путь language=...mysql/share/russian), а вот как его определить для одного запроса
![]() |
Сообщ.
#3
,
|
|
|
Кроме того, это зависит ещё и от кодировочки. Нормально сортирует он только в одной, а вот в какой... не помню. Могу посмотреть, но нужно время... Лучше вссего поэксперементировать! Как только получишь требуемый результат, значит правильно настроил язык и кодировку.
ЗЫ. Да и ещё. В случае вышеописанных "неправильных" настроек не верно выполняются и сами запросы, не только сортировка. Так что.... ![]() |
Сообщ.
#4
,
|
|
|
Всем спасибо.
Проблема вылечилась добавлением ![]() ![]() character-sets-dir = C:/mysql/share/charsets default-character-set = win1251 Выйграл где-то секунд 80 обработки! B) Кстати, можно добавить в FAQ. |
Сообщ.
#5
,
|
|
|
Для Unix:
Изменяем файл my.cnf прописываем: default-character-set = win1251 character-sets-dir=ччч, где вместо "ччч" указать пусть к папке мускула share/charsets, которая содержит кучу *.conf файлов А после модификаций рестартонуть апач... |