|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.05.2016, 19:40 | #1 |
Пользователь
Регистрация: 01.01.2016
Сообщений: 98
|
Создать динамический запрос для выборки по нескольким полям
Есть большая таблица, в которой много полей. Нужно сделать возможность отбора по нескольким полям одновременно. По одному полю или двум делаю без проблем, но нужно создать универсальную процедуру, чтобы выборка осуществлялась по нескольким полям с условиями "И" и "ИЛИ", т.е. нужно сделать универсальный фильтр для таблицы.
|
30.05.2016, 19:44 | #2 |
Пользователь
Регистрация: 01.01.2016
Сообщений: 98
|
Код HTML:
DataModule1.SQLQuery1.Close; DataModule1.SQLQuery1.SQL.Text:='SELECT cartridgi.IDCartridga, cartridgi.DatePriema, sprmodeleycartridgey.ModelCartridga, sprindexov.Indeks,'+ ' sprklientov.NameKlient, cartridgi.Articul, sprstatusov.Status, sprmanager.Manager, sprmanagervid.Managervid, sprmasterov.master, cartridgi.NumZayavki,'+ ' cartridgi.komments, cartridgi.DateVidachi, sprmestrabot.mestorabot, cartridgi.daterabot, cartridgi.UchetVzp,'+ ' cartridgi.DocVist, cartridgi.Nal_bn, sprpredpr.namepredpr, sprTipOpl.TipOpl'+ ' FROM cartridgi'+ ' LEFT JOIN sprmodeleycartridgey ON cartridgi.IDModelCartridga = sprmodeleycartridgey.IDModelCartridga'+ ' LEFT JOIN sprindexov ON sprmodeleycartridgey.IDIndexa = sprindexov.IDIndexa'+ ' LEFT JOIN sprklientov ON cartridgi.IDKlienta = sprklientov.IDKlienta'+ ' LEFT JOIN sprstatusov ON cartridgi.IDstatusa = sprstatusov.IDStatusa'+ ' LEFT JOIN sprmanager ON cartridgi.IDManagerPrin = sprmanager.IDManager'+ ' LEFT JOIN sprmanagervid ON cartridgi.IDManagervidal = sprmanagervid.IDManager'+ ' LEFT JOIN sprmestrabot ON cartridgi.IDMestaRabot = sprmestrabot.IDMestaRabot'+ ' LEFT JOIN sprmasterov ON cartridgi.IDMastera = sprmasterov.IDmastera'+ ' LEFT JOIN sprpredpr ON cartridgi.IDPredpr = sprpredpr.IDPredpr'+ ' LEFT JOIN sprtipopl ON cartridgi.IDTipOpl = sprTipOpl.IDTipOpl'+ ' WHERE '+dinzapr+ ' ORDER BY cartridgi.DatePriema DESC'; |
31.05.2016, 05:35 | #3 | |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,392
|
Цитата:
Код:
E_MAIL: rijgvina7@yahoo.com
Последний раз редактировалось xxbesoxx; 31.05.2016 в 05:39. |
|
31.05.2016, 06:38 | #4 |
Участник клуба
Регистрация: 23.04.2009
Сообщений: 1,058
|
я думаю автор имел ввиду другое .
Код:
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
|
31.05.2016, 06:49 | #5 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Это если он хранимую процедуру сделает и так параметр её передаст. Судя по коду навряд ли. У ТС не получается саму строку условий сформировать. И не важно где он будет это делать - проблемы одинаковые. Путь решения зависит от конкретного набора возможных условий фильтра, абстрактного пути нет
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск по нескольким полям | soctellad | PHP | 8 | 02.09.2013 15:30 |
Создать запрос выборки из нескольких таблиц | skilk | SQL, базы данных | 10 | 03.03.2012 10:47 |
Как составить запрос по нескольким полям | lysyuk1 | БД в Delphi | 3 | 17.11.2011 10:13 |
Прошу помочь с макросами для выборки определенных данных по нескольким критериям | rdt | Microsoft Office Excel | 6 | 30.07.2010 13:12 |
Sql запрос по нескольким полям | Епгений | БД в Delphi | 6 | 20.06.2010 12:04 |