сортировка русского текста

_Dio_

Новичок
сортировка русского текста

Привет всем.
Подскажите пожалуйста как реализовать на SQL вот такое дело.
Надо отсортировать русский текст, в котором есть в самом начале (& q u i t ; )
order by не правильно сортирует, он по таблице символов сортирует :(
 

Vinny

Guest
У всех впереди стоит эта фигня? Если да, то в чем проблема? В итоге всеравно доберется до русских букв и отсортирует правильно. Может у тебя с кодировками что-то не то?
 

_Dio_

Новичок
вот пример базы:

ID_|_txt____
1 "ВВВ"
2 ААА
3 ЮЮЮ
5 "ЧЧЧ"

при order by txt asc он выдаст вот что:
1 "ВВВ"
5 "ЧЧЧ"
2 ААА
3 ЮЮЮ

а мне надо что бы кавычки не учитывались, т.е. так
2 ААА
1 "ВВВ"
5 "ЧЧЧ"
3 ЮЮЮ

вот как этого добиться?
 

tony2001

TeaM PHPClub
SELECT IF(SUBSTRING(field,1,1)='"',SUBSTRING(field,2),field) as text FROM... ORDER BY text ASC;
где-то так, видимо.
но лучше базу перебрать и исправить все.
 

_Dio_

Новичок
да вроде работает, подредактировал немного и все классно :)
СПАСИБО БОЛЬШОЕ.
 

_Dio_

Новичок
а если надо ковычки, зачем же их убивать если есть решение проблемы?
 

Vinny

Guest
Ой блин, о-е-е-й... Запрос конечно решает проблему, но не лучше-ли в базу вносить без кавычек? Такой запрос будет выполняться дольше, чем без кавычек, когда можно просто написать select * from table order by field. И индексы тут применить не получится...
В общем, я бы настоятельно рекомендовал подумать...
 

tony2001

TeaM PHPClub
_Dip_
надо кавычки в базе держать ??
выводи с кавчыками, если так надо.
тем более, что у тебя вперемешку все - а это говорит о бардаке в базе.
 

chira

Новичок
Если позволяет место, то можно добавить дополнительное поле по которому будешь сортировать.
В это поле записываешь данные без кавычек.
Так же в этом поле можно хранить не всю строку, а откусывать примерно 20 символов.
 
Сверху