Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Вниз

Фильтрация по частичному совпадению   Найти похожие ветки 

 
VladimirL   (2002-02-01 17:24) [0]

Ребята, такой вопрос: как в Delphi 4 организовать фильтрацию по частичному совпадению строк, т. е., например, нужно, чтобы в гриде были показаны все записи таблицы, в поле "Naim" которых есть подстрока "Анальгин"? Событие OnFilterRecord использовать нельзя, т. к. тогда база в гриде еле ползает. Компонент ТТаble.
Заранее спасибо за помощь.


 
Johnmen   (2002-02-01 17:31) [1]

Если хочешь без обращения внимания на регистр букв, то только пробежав НД (First...Next...) проверяя значение поля на присутствие в нем подстроки поиска (соотвественно все преобразовав напр. AnsiUpperCase...)


 
Виктор Щербаков   (2002-02-01 17:44) [2]

select * from MyTable where (Naim like "%Анальгин%")


 
}{unter   (2002-02-01 18:03) [3]

Виктор Щербаков
Ты уверен, что человек в курске как SQL запрос сделать, хоть бы написал, что TQuery нужен !


 
Val   (2002-02-01 18:54) [4]

>}{unter © (01.02.02 18:03)
Виктор Щербаков © дал человеку направление, в котором работать - он не обязан писать готовый код


 
yaJohn   (2002-02-01 19:22) [5]

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 :(((


 
Siberia   (2002-02-01 19:37) [6]

Да все правильно, только еще такой момент, когда ищещь по частичному совпадению надо обе части приводить к одному регистру:
str:="select * from tab1 where (Upper(Naim) LIKE "%"+ AnsiUpperCase("Анальгин") +"%");




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

Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.005 c
1-90607
Dinara
2002-02-12 14:44
2002.02.28
Перерисовка окна


1-90578
TAN
2002-02-12 11:01
2002.02.28
DateTimePicker


3-90474
HDD
2002-02-03 12:34
2002.02.28
Помогите пожалуйста люди добрые!


14-90654
Mike_Goblin
2002-01-11 10:11
2002.02.28
Москвичи - может кто сдает квартиру???


4-90710
Beauty_Full
2002-01-01 18:01
2002.02.28
Action !!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский