powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Множественный фильтр по наборам из таблицы
9 сообщений из 9, страница 1 из 1
Множественный фильтр по наборам из таблицы
    #40076987
Demon_248
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста! Не могу справится с задачей:
есть две таблицы 1 Данные 2 Значения
в первой набор данных поля '1 2 3 4 5 ...' во второй значения для фильтра 'а'
как выбрать уникальные записи по фильтру поля 'а' таблицы значения из таблицы данные
всяко пробовал склоняюсь к
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT *
FROM Данные
WHERE  данные.1 in (select a from Значения) and данные.2 in (select a from Значения) and ............;
либо
SELECT *
FROM Данные
WHERE   (select a from Значения where значения.а=данные.1) and  (select a from Значения where значения.а=данные.2) and ....

.....;

все работает если все подзапросы возвращают данные
если в таблице значения нет значений для фильтрции вся конструкция возвращает пусто так как получается and null

возможно ли ипользовать для каждого подзапроса iff для отображения is null?
все перепробовал не получается как отработать если хоть один подзапрос пустой по нему is null или на крайняк like '*'

идея в том, что если не задан какой либо фильтр или группа из данных фильтров выдать выборку and по остальным
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077006
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Demon_248,
посмотрите это:
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077009
Demon_248
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
(iif (exists(select a from значения where а=1),1 in (select а from значения),1 not in (select а from значения) );
но что то смущает особенно not in

я новичек, может быть поможете модернизировать
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077010
Demon_248
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! но реализовано макросом, нужен sql
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077013
Demon_248
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Demon_248,
Код: sql
1.
exists(select a from значения where а=1)


и в этом случае отрабатывает всегда false (((
как задать условие
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077022
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Demon_248,
Может я чё не понимаю-но при чем тут exists?
Подключиться к сторонней базе,создать запрос к ней(если надо с параметрами) и назначить его источником строк для combo...Фсё...Или я чего-то не знаю\не понимаю
При Вашем подходе (не понятном мне от слова совсем) что будет если, по какой-либо причине, изменят порядок столбцов в таблице на сервере
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077046
Demon_248
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
WHERE  (iif ((select count(0)  from значения,данные where а=1)<>0 ,1 in (select а from значения),1 not in (select а from значения))) and



пришел к такому решению, подскажите насколько верное с точки зрения нагруженности
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077111
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Demon_248
....
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT *
FROM Данные
WHERE  данные.1 in (select a from Значения) and данные.2 in (select a from Значения) and ............;
либо
SELECT *
FROM Данные
WHERE   (select a from Значения where значения.а=данные.1) and  (select a from Значения where значения.а=данные.2) and ....

.....;

все работает если все подзапросы возвращают данные
если в таблице значения нет значений для фильтрции вся конструкция возвращает пусто так как получается and null

возможно ли ипользовать для каждого подзапроса iff для отображения is null?
все перепробовал не получается как отработать если хоть один подзапрос пустой по нему is null или на крайняк like '*'

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

А если заменить AND на OR ?
Код: vbnet
1.
WHERE (select a from Значения where значения.а=данные.1) OR (select a from Значения where значения.а=данные.2) OR ....
...
Рейтинг: 0 / 0
Множественный фильтр по наборам из таблицы
    #40077172
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Demon_248
....во второй значения для фильтра 'а'.....
покажите несколько(1-2)значений этого поля
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Множественный фильтр по наборам из таблицы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]