|
|
|
| SELECT `title` FROM `tbl` ORDER BY `title` ASC;
Тип данных столбца `title` - TEXT.
В итоге вывод такой
1,10,11,2,20,21,3,30,31,4
А нужно по порядку. Конечно, можно данные хранить как INT, но смысл тот, что в этом столбце могут лежать и обычные строки.
То есть задача сортировать строки, если в них содержаться числа, как числа.
Посоветуйте как быть. Спасибо
// Интересует решение на чистом MySQL, не прибегая к средствам PHP. | |
|
|
|
|
|
|
|
|
для: Trianon
(19.02.2008 в 18:18)
| | Тоесть Вы предлогаете менять структуру БД? | |
|
|
|
|
|
|
|
для: coder-decoder
(19.02.2008 в 18:31)
| | Безусловно. Как минимум тип (или назначение) поля. | |
|
|
|
|
|
|
|
для: Trianon
(19.02.2008 в 18:39)
| | Как бы это было не странно, я нашёл выход:)
SELECT `title` FROM `tbl` ORDER BY CONVERT(`title`,SIGNED),CONVERT(`title`,CHAR);
В итоге всё выводится как надо. Спасибо всем за внимание :) | |
|
|
|
|
|
|
|
для: coder-decoder
(19.02.2008 в 18:47)
| | вот Вам контрпример.
примерно 5 см
примерно 10 см
примерно 20 см
|
| |
|
|
|
|
|
|
|
для: Trianon
(19.02.2008 в 19:15)
| | Ну в моём случае либо строка "Авбгд", либо "123". Не смешаные. Так что для меня подходит:) | |
|
|
|