Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.25;
Скачать: CL | DM;

Вниз

Поиск в базе!   Найти похожие ветки 

 
Youri ©   (2002-11-06 11:56) [0]

Господа! Очень нужна помощь.
Не знаю как осуществить частичный поиск методом Locate. Нужно искать подстроку в некотором поле. Но не с начала, а например с 5 символа. Например:
В строке "Нужна помощь" необходимо найти строку "жна помо".
Как сделать?
Спасибо!


 
Alexandr ©   (2002-11-06 11:58) [1]

while not(eof) do begin
if pos(...)>0 then break;
next;
end;


 
Max Zyuzin ©   (2002-11-06 12:01) [2]

Можно сделать хитро :)
Сделать в отдельном IBQuery поиск какой надо типа
Select * from mytab where mifield like "%жна помо%"
И локейтить по отображаемуому датасету уже зная строку целиком (лучше по ключю)


 
Alexandr ©   (2002-11-06 12:05) [3]

но будет ли быстрее при этом...


 
Max Zyuzin ©   (2002-11-06 12:19) [4]

Будет или не будет зависит много от чего... А вопрос конечно интересный :) пусть автор ветки попробует и скажет


 
Youri ©   (2002-11-06 12:23) [5]

Alexandr!
Использую ваш метод с циклом. Но поиск в таком случае происходит очень медленно!
Есть ли какие-то другие способы?
Max Zyuzin!
Что делать, если используется не IBQuerry, а IBTable?


 
Max Zyuzin ©   (2002-11-06 12:27) [6]

Какая разница? Добавте еще один компонент IBQuery для выполнения запроса. А Locate делайте уже в вашей Table.


 
Alexandr ©   (2002-11-06 12:37) [7]

самое главное, не использовать IBTable.
В нем все тормоза!


 
Wolf226 ©   (2002-11-06 13:43) [8]

IBTable1.locate("fieldname","жна пом",[loPartialKey])


 
Max Zyuzin ©   (2002-11-06 13:44) [9]

>Wolf226 © (06.11.02 13:43)
Это не поможет. Locate ищет троку с начала.


 
Wolf226 ©   (2002-11-06 14:18) [10]

Sorry. Ошибся.
Кстати. На счет вариантов 1 (Alexandr) и 2 (Max Zyuzin)
При малом объеме наверно лучше вариант 1, при большом - 2.
Но надо проэкспериментировать.



Страницы: 1 вся ветка

Текущий архив: 2002.11.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-82796
Live_Aus_Berlin
2002-11-13 16:37
2002.11.25
У кого нибудь есть исходники проги которая считает производные


14-82970
XPOH
2002-11-04 12:02
2002.11.25
Формат *.dcu файла


1-82866
bondik
2002-11-14 15:57
2002.11.25
вопос


4-83076
zarum
2002-10-14 19:29
2002.11.25
как бы создать виртуальный диск в памяти (ex RAMDRIVE)


1-82844
Cashey
2002-11-12 22:23
2002.11.25
Округление дробной части числа