[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Возможно ли в запросе получить число от строки
SoMeOnE
Добрый день. Такой запрос
$sql = "SELECT * FROM ".$this->houses_table." ORDER BY `house_name` ASC";

house_name содержит только int. Возможно ли сделать ордеринг еще по полю complex_name которое представляет из себя varchar поле. с цифрами в конце строки. Что то на примере ComplexC1, ComplexC13 ...
Пробовал, что то в этом роде
$sql = "SELECT * FROM ".$this->houses_table." ORDER BY `house_name` ASC, (`complex_name` regexp '[0-9]') ASC";

естественно абсолютно неверно.
Placido
Коряво, но работает))):
SELECT *, CAST(REVERSE(SUBSTRING(CAST(REVERSE(CONCAT(pid, 1)) AS DECIMAL) FROM 2)) AS DECIMAL) as `orderby` FROM `yourtable` ORDER BY `orderby`
T1grOK
Я бы отдельное поле создал, чем так извращаться.

_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
SoMeOnE
Цитата (Placido @ 10.12.2012 - 10:26)
Коряво, но работает))):
SELECT *, CAST(REVERSE(SUBSTRING(CAST(REVERSE(CONCAT(pid, 1)) AS DECIMAL) FROM 2)) AS DECIMAL) as `orderby` FROM `yourtable` ORDER BY `orderby`

спасибо.
SoMeOnE
Цитата (T1grOK @ 10.12.2012 - 10:27)
Я бы отдельное поле создал, чем так извращаться.

Поздно уже. Дорабатываю проект. Не с нуля создаю. Причем только в одном месте нужно. А там уже столько всего занесено(
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.