Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 20

Фильтрация данных и поиск по первой букве

10.06.2016, 06:00. Показов 2179. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
здравствуйте, нужно сделать вильтрацию чтоб находила из нескольких edit ов, данные, и при этом если есть данные например "пермь" в поле вести "п" в дб грид ложно вывести все города ничающиеся на п. знаю что надо поствить % но как правильно сделать в этом коде немогу понять.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
begin
with ADOQuery3 do
   begin
     SQL.Text := 'Select *  from area '+
                 'where 5=5 '; // where 5=5 выступает как заглушка
    if edit48.Text<>'' then
    begin   // Append Это метод
     SQL.Append('and город =:'+ edit48.Name) ; // продолжаю запрос SQL.Append ! создаю параметр сам " edtFamilia.Name "
     Parameters.ParamByName(edit48.Name).Value:=QuotedStr('%' + Edit48.Text + '%'); // сам из (edtFamilia.Name) который сейчас параметр  делаем запрос Trim(edtNaimenovanie.Text);
    end;
    if edit49.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and [количество комнат] =:'+ edit49.Name) ;
     Parameters.ParamByName(edit49.Name).Value:=Trim(edit49.Text);
    end;
    if edit50.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and цена =:'+ edit50.Name) ;
     Parameters.ParamByName(edit50.Name).Value:=(edit50.Text);
    end;
 
 
    Open; // открываю ADOQuery1
   end;
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.06.2016, 06:00
Ответы с готовыми решениями:

Поиск по первой букве фамилии
У меня поиск по фамилии, но он работает только когда фамилию вводишь цэликом, а как сделать по 1-вой букве?

База данных access поиск и фильтрация
Здраствуйте , есть исходник помогите с кодом поиска и фильтрации , перепробовал все поиски и фильтрации ничего не помогает !

Фильтрация, сортировка, поиск в базе данных
меню в базе данных на делфи в которой осуществить фильтрацию,сортировку,поиск(по всем полям).Базу я сделал и связал а как осуществить...

9
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,668
Записей в блоге: 21
10.06.2016, 09:32
Delphi
1
'and поле LIKE '':param%'''
либо
Delphi
1
Parameters.ParamByName('xxxx').Value:=''''+sometext+'%''';
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
10.06.2016, 10:26
А на кой нужно создавать динамические имена параметров для статического кода? Абсолютно бессмысленное усложнение кода.
0
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 20
10.06.2016, 19:00  [ТС]
извени а не пожешь показать на моем примере как это написать. пожалуйста!!!!!!
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
10.06.2016, 19:35
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
begin
with ADOQuery3 do
   begin
     SQL.Text := 'Select *  from area '+
                 'where 5=5 '; // where 5=5 выступает как заглушка
    if edit48.Text<>'' then
    begin   // Append Это метод
     SQL.Append('and город like :Город') ; // продолжаю запрос SQL.Append ! создаю параметр сам " edtFamilia.Name "
     Parameters.ParamByName('Город').Value:=QuotedStr(Edit48.Text); // сам из (edtFamilia.Name) который сейчас параметр  делаем запрос Trim(edtNaimenovanie.Text);
    end;
    if edit49.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and [количество комнат] = :Комнат') ;
     Parameters.ParamByName('Комнат').Value:=Trim(edit49.Text);
    end;
    if edit50.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and цена = :Цена') ;
     Parameters.ParamByName('Цена').Value:=(edit50.Text);
    end; 
    Open; // открываю ADOQuery1
   end;
из кода лучше убрать проценты, а процент вводить непосредственно при вводе поискового значения.
0
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 20
11.06.2016, 08:00  [ТС]
Пытливый, а возможно сделать чтоб проценты были сразу в коде просто для пользователей будет неудобно вводит проценты.нужно лишь сделать только букву
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,668
Записей в блоге: 21
11.06.2016, 08:03
и не надо вводить
пользователь пишет АА
а программа вставляет АА%
0
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 20
11.06.2016, 08:10  [ТС]
krapotkin, сделал только что получилось так, работает
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
   begin
     SQL.Text := 'Select *  from area '+
                 'where 5=5 '; // where 5=5 выступает как заглушка
    if edit48.Text<>'' then
    begin   // Append Это метод
     SQL.Append('and город like :'+ edit48.Name) ; // продолжаю запрос SQL.Append ! создаю параметр сам " edtFamilia.Name "
     Parameters.ParamByName(edit48.Name).Value:=(Edit48.Text+'%' ); // сам из (edtFamilia.Name) который сейчас параметр  делаем запрос Trim(edtNaimenovanie.Text);
    end;
    if edit49.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and [количество комнат] =:'+ edit49.Name) ;
     Parameters.ParamByName(edit49.Name).Value:=Trim(edit49.Text);
    end;
    if edit50.Text<>'' then  // повторяю тоже самое
    begin
     SQL.Append('and цена <=:'+ edit50.Name) ;
     Parameters.ParamByName(edit50.Name).Value:=Trim(edit50.Text);
    end;
 
 
    Open;
0
 Аватар для Пытливый
3763 / 2267 / 705
Регистрация: 29.05.2013
Сообщений: 9,622
11.06.2016, 10:15
Если вы жестко впишете проценты, то будет наблюдаться вот такая ситуация - пользователь хочет найти город Великий. Он вводит в едит Великий и получает несколько значений вместо одного:
Великий
Великий Устюг
Великий Новгород
и т.д.
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,668
Записей в блоге: 21
11.06.2016, 13:12
верно, но вроде задача так и ставилась
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.06.2016, 13:12
Помогаю со студенческими работами здесь

Фильтрация и поиск данных БД в Дельфи 2010
,нужно организовать поиск и фильтрацию, хочется через радиобаттон, не могли бы помочь хоть один пример простой на моей программе? дальше...

Фильтрация и поиск данных мпонента DBGrid при подключении к MySQL server (ODE)
Не могу настроить фильтрацию и поиск данных компонента DBGrid при подключении к MySQL server5.5(через драйвер ODE). Проекте есть форма на...

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

PHP поиск по первой букве
Делаю запрос: LIKE &quot;a%&quot; А выдаёт все значения из базы. Может есть другой способ поиска по первой букве?

StringGrid поиск по первой букве
Помогите доработать код поиска в StringGrid. Есть таблица с фамилиями в первом столбце,Edit и кнопка.Пишем несколько первых букв...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
[В процессе разработки] SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru