Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Другие СУБД > Как SQL ем сравнивать строки как числа


Автор: zone51 8.1.2008, 14:55
Доброго времени суток товарищи, помогите пожалуйста решить пролему. У меня есть в базе данных поле в котором хранятся адреса в виде 23А/2А то есть это универсальный формат. Это число может быть и 21 и 21А и 21А/2 и 21/2B и 21F/5G. то есть как угодно. Так вот мне надо организовать функция поиска адресов по критерию То есть пользователь задает начальный и конечный диапазоны то есть 2 адреса в любом из вышепоказанных форматов.А система должна выбрать все промежуточные адреса. Но по большому счету поиск осуществляется как сравнение числовых составляющих первых частей то есть для 21F/4D это будет 21 то же самое для 21Р 21 и т д
так вот задача в идеале стоит выщемить средствами скл это число и организовать поиск в базе по вот этим составляющим чтобы из строки как бы выщипывалось первое число и по нему все проверялось. Возможно ли то? Если нет то подскажите пожалуйста как это сделать руками в таком случае. Сам юзаю java+spring+ibatis. Спасибо smile  smile  smile 

Автор: geckelberryfinn 9.1.2008, 12:57
это можно сделать при помощи рекурсивного SQL, а также при помощи функций POS и SUBSTR Подробнее о рекурсивных запросах и перечисленных функциях можно почитать в кукбуке. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)