![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Фильтрация по частичному совпадению [D4, Paradox]
VladimirL © (2002-02-01 17:24:00)Ребята, такой вопрос: как в Delphi 4 организовать фильтрацию по частичному совпадению строк, т. е., например, нужно, чтобы в гриде были показаны все записи таблицы, в поле "Naim" которых есть подстрока "Анальгин"? Событие OnFilterRecord использовать нельзя, т. к. тогда база в гриде еле ползает. Компонент ТТаble.
Заранее спасибо за помощь.
Siberia (2002-02-01 19:37:00) [1]Да все правильно, только еще такой момент, когда ищещь по частичному совпадению надо обе части приводить к одному регистру:
str:="select * from tab1 where (Upper(Naim) LIKE "%"+ AnsiUpperCase("Анальгин") +"%");
yaJohn (2002-02-01 19:22:00) [2]S ТТаble, bez ispolzovania OnFilterRecord - nikak. Mojno poprobovat" soptimizirovat" sravnenie strok, no silno bistree pos(substr,str) vriadli viydet.
Vihod - kak skazal Виктор Щербаков.
Ya v svoe vremia stolknulsia s takoy problemoy. I where (Naim like "%Анальгин%") ne prohodilo, poskolku filtr chasto menialsia.
Togda ya delal tak: Vibiral vse zapisi iz Table1 v 2 RxMemoryData (ili kak ee, tochno ne pomnu). V odnu s Analginom - v druguu bez. Konechno, dolgo. No odin raz. Potom pri smene filtra probegal po oboim i perebrasival "Analgini" po neobhodimosti iz odnogo v drugoy. No mne nujen bil tol"ko prosmotr.... I ne elegantno :(((
Val (2002-02-01 18:54:00) [3]>}{unter © (01.02.02 18:03)
Виктор Щербаков © дал человеку направление, в котором работать - он не обязан писать готовый код
}{unter (2002-02-01 18:03:00) [4]Виктор Щербаков
Ты уверен, что человек в курске как SQL запрос сделать, хоть бы написал, что TQuery нужен !
Виктор Щербаков (2002-02-01 17:44:00) [5]select * from MyTable where (Naim like "%Анальгин%")
Johnmen (2002-02-01 17:31:00) [6]Если хочешь без обращения внимания на регистр букв, то только пробежав НД (First...Next...) проверяя значение поля на присутствие в нем подстроки поиска (соотвественно все преобразовав напр. AnsiUpperCase...)