Sha
Всё правильно.
В общем случае независимо от полей таблицы
SELECT CHAR_LENGTH(`field`) , `table`.* FROM `table` ORDER BY 1 DESC
Функция CHAR_LENGTH не ошибается (если текст с языком дружит чего там ошибаться-то?). Ошибается сортировка по полю типа TEXT на больших длинах.
Heavy
Sha писал:
Функция CHAR_LENGTH не ошибается (если текст с языком дружит чего там ошибаться-то?).
угу, это я попутал - не с этой функцией проблема была, а с функциями копирования(подстрока и т.д) N байтов/симоволов - т.е. и с бинарной и с посимвольной. нужно было выдернуть 2К симоволов, а функция как рандом выдавала то больше, то меньше.
Sha писал:
Ошибается сортировка по полю типа TEXT на больших длинах.
насколько помню, был какой-то параметр конфигурации указывающий по скольким начальным символам мускулю делать сортировку таких полей, что-то около 2Кб по-умолчанию.