MySQL. Сортировка по числовым значениям, хранящихся как TEXT

Статус
В этой теме нельзя размещать новые ответы.

shureen

Милорд Лось Кристофер
MySQL. Сортировка по числовым значениям, хранящихся как TEXT

Здравствуйте! Что-то вообще не догоню как сделать сабж. Т.е. есть таблица с полем типа TEXT, так устроена система что это поле нельзя в INT или FLOAT перевести. В этом поле хранятся числа, цена товаров в общем.
Например есть товары с ценой 1, 2, 3, 11, 22, 33. При сортировки по этому полю получается такой порядок: 1, 11, 2, 22, 3, 33. Как-нибудь стандартными средствами MySQL можно это предотвратить. Заранее благодарю!!!
 

shureen

Милорд Лось Кристофер
Это то всё конечно хорошо. Но система устроена так:
На сайте может много всяких каталогов и само собой поля этих каталогов могут быть разными. Так вот все эти каталоги хранятся в большой таблице. Значение полей каталога хранятся в полях с d0 по d29, все эти поля имеют тип TEXT. Конечно не самое лучшее решение, но систему писал не я. Так вот интересует ответ на вопрос "Можно ли сделать САБЖ? Если нет так нет, если да, то прошу совета Как или Куда копать?"
 

shureen

Милорд Лось Кристофер
Мля, кто-нибудь вопрос читает? МОЖНО ЛИ СТАНДАРТНЫМИ СРЕДСТВАМИ MySQL сделать САБЖ? Если нельзя то буду извращаться, с переносом цены в отдельное поле (там товаров уже около 3000), которое сделаю FLOAT
 

Beavis

Banned
shureen
ты чё, глупый чтоль? тебе уже ответили! иди извращайся
 

shureen

Милорд Лось Кристофер
Спасибо.

P.S. Сразу бы ответили тупо "НЕТ" и всё.
 

Alexandre

PHPПенсионер
Сразу бы ответили тупо "НЕТ" и всё.
но почему сразу так и нет?

SELECT TRUNCATE(' 12',0);

только РЕФАКТОРИНГ БД - рано или поздно делать придется,
лучше его сделать - чтоб потом не наступать на другие грабли...

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

переделка в фоновом режиме заняла более полугода.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху