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

Вниз

Контекстный поиск в таблице   Найти похожие ветки 

 
maras ©   (2002-10-22 10:05) [0]

Ситуация такая.
Задается строка поиска _stroka.
Нужно отобрать из таблицы (Pdox или dBase) строки в заданных полях F1,F2...
Fn которой содержится строка _stroka (но не точное соответствие, а
вхождение). Поля F1,F2... Fn как текстовые так и числовые.
Выбор в каком поле из F1,F2... Fn искать, осуществляется с помощью СheckBox
(cbF1,cbF2..cbFn).
Сделала - путем перебора всех записей таблицы и проверкой
pos(_stroka,F1)>0 (при cbF1.Checked) и т.д.
Все работает. Но при количестве записей >500 уже просто действует на нервы.
Может кто-то подскажет как сделать быстро и элегантно( с ProgressBar -ом и
прочими прибамбасами)
Спасибо заранее, Марина
Можно ответить MSS68@mail.ru


 
Anatoly Podgoretsky ©   (2002-10-22 10:14) [1]

Select * from tbl where (fld1 like "%val%") or (fld1 like "%val%")
Строку формировать динамически в зависимость от условий поиска


 
sniknik ©   (2002-10-22 10:23) [2]

может будет побыстрее если использовать запрос вроде
SELECT * FROM [Table] WHERE (F1+F2+...Fn LIKE "%Строка%")
и после по ключу (ключевое поле) из запроса перемещатся по таблице?

но быстрым такой поиск вряд ли сделаеш, без использования индексов в любом случае перебор таблици ...


 
Anatoly Podgoretsky ©   (2002-10-22 10:32) [3]

Индексы для LIKE не помогут


 
sniknik ©   (2002-10-22 10:36) [4]

В том то и дело (может я непонятно выразился) что в любом случае будет перебор таблици.


 
Anatoly Podgoretsky ©   (2002-10-22 10:43) [5]

Но достаточно эффективный по сравнению с жругими методами



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-34023
[NEW]Splinter
2002-11-02 14:26
2002.11.11
Не могу прочитать из EXE-шника...


14-34194
Anatoly Podgoretsky
2002-10-22 00:45
2002.11.11
Именинники 22 октября


1-34099
Cossys
2002-10-31 11:53
2002.11.11
Type of expression must be BOOLEAN - что за хрень


14-34238
AL2002
2002-10-23 11:02
2002.11.11
Пжалста. Не обидьте.


6-34155
Silenser
2002-09-10 12:18
2002.11.11
Чат в локалке