Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.05.2008, 15:14   #1
yulia
Форумчанин
 
Аватар для yulia
 
Регистрация: 24.03.2007
Сообщений: 314
По умолчанию параметрический запрос с частью слова в качестве параметра

Как сделать так, чтобы запрос находил запись даже если я передаю в качестве параметра только часть слова?

ну например, е сть таблица:

Название Цена
Платье 150

И мне надо чтобы даже если я в качестве параметра передам "латье", он все равно нашел эту запись....

Спасибо ))
yulia вне форума Ответить с цитированием
Старый 09.05.2008, 15:25   #2
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Юзай функцию Pos('что ищещь','где ищещь');
Результат 0 если не нашло, если <>0 нашло, и это позиция в строке.
Пролистывай все записи в цикле и дело в шляпе
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 09.05.2008, 15:28   #3
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

если мне не изменяет память, то как-то так:
select *
from MyTable
where Name LIKE %латье%
pu4koff вне форума Ответить с цитированием
Старый 09.05.2008, 15:29   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от yulia Посмотреть сообщение
И мне надо чтобы даже если я в качестве параметра передам "латье", он все равно нашел эту запись....
SQL, надо полагать?

Код:
........... WHERE field LIKE "%латье"
--------------------------
Вместе ответили.
Ещё вариант (если нужна маска по одному символу:
Код:
........... WHERE field LIKE "_латье"

Последний раз редактировалось B_N; 09.05.2008 в 15:33.
B_N вне форума Ответить с цитированием
Старый 09.05.2008, 18:03   #5
yulia
Форумчанин
 
Аватар для yulia
 
Регистрация: 24.03.2007
Сообщений: 314
По умолчанию

Да, через like работает, только теперь возникла проблема, что мне надо это искать в нескольких таблицах....

select price
from table1, table2, table3
where name like '%латье%';

И вот этот запрос не работает... ну т.е он выполняется, но ничего не находит.... Как это исправить?

Да и главное проблема состояла не в этом, а то как этот запрос сделать параметрическим? ну т.е. чтобы это 'латье' могло вводится с приложения..

select price
from ...
where name like .....
yulia вне форума Ответить с цитированием
Старый 09.05.2008, 18:58   #6
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Код:
SELECT
	table1.name AS name1,
	table2.name AS name2,
	table3.name AS name3
FROM
	table1, table2, table3
WHERE
	table1.name LIKE "%латье"
	OR
	table2.name LIKE "%латье"
	OR
	table3.name LIKE "%латье"
.................
А если честно, несколько настораживает такая структура базы.....
---------------------
Да, чуть не забыл, "главную" проблему не совсем понял... Запрос - это строка...

Последний раз редактировалось B_N; 09.05.2008 в 19:01.
B_N вне форума Ответить с цитированием
Старый 09.05.2008, 20:27   #7
yulia
Форумчанин
 
Аватар для yulia
 
Регистрация: 24.03.2007
Сообщений: 314
По умолчанию

спасибо большое.. работает.... а база ненормальная - это точно... но препод сказал нормально )))
yulia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача компонента как параметра в функцию hayhay Microsoft Office Excel 1 11.03.2008 15:53
Передача параметра в поток joker Win Api 10 22.12.2007 12:53
Помогите с серверной частью на WinSock Miha Работа с сетью в Delphi 4 25.06.2007 11:10
Помогите с чтением параметра в реестре!! snake-as Общие вопросы Delphi 2 14.03.2007 15:50