2016-09-21 4 views
0

Моя база данных состоит из 2-х таблиц:нескольких запросов параметров для поиска тегов

  • «тестирует
  • 'метки'

'TAGS' таблица связана с 'таблицей ИСПЫТАНИЙ' с отношение «много к одному». Цель таблицы «тегов» - назначить теги каждому тесту, чтобы пользователь мог запрашивать записи в «тестах» таблицы, которые имеют определенные теги. Для этого пула я сделал запрос параметра, но я могу ввести только один параметр за раз, вместо этого мне нужно ввести несколько параметров (тегов), потому что каждая запись в таблице «тесты» может иметь несколько тегов. Я видел, что в поле критериев запроса coloumns можно использовать такие операторы, как «И» и «ИЛИ», но я понятия не имею, как это сделать.

+0

Здравствуйте и добро пожаловать на SO. Я думаю [эта ссылка] (https://support.office.com/en-us/article/Use-parameters-to-ask-for-input-when-running-a-query-c2806d3d-d500-45a8-8507 -ec6af351b6ed). В противном случае попробуйте googling что-то вроде «получить доступ к нескольким параметрам». –

+0

Скажите, что пользователь ищет два тега: 'ms-access' и' sql': вы ожидали, что он будет соответствовать тесту, который был помечен только тегом 'ms-access', а не тегом' sql'? – onedaywhen

ответ

0

Прежде всего вам необходимо собрать теги для поиска. Вы можете сделать это, используя окно списка с множественным выбором или пользовательской формой с флажками, подобными быстрым фильтрам в Excel. Сбор тегов в виде свободного текста возможен, но пользователям этот метод не нравится.

Затем сохраните собранные теги в специальную новую таблицу и присоедините ее к существующим таблицам. Результаты запроса будут ограничены только выбранными тегами.

В качестве альтернативы вы можете создать динамический источник записи для формы с результатами и использовать In. Генерация SQL строку, как это:

"SELECT * FROM MyQueryWithFullResults WHERE tag IN ('tag1','tag2','tag3')" 

и использовать его в качестве источника записей для формы или SQL для записей

+0

Прошу прощения. Я признаю, что не очень хорошо понял. Ваше решение. Вместо того, чтобы иметь форму для ввода параметра моего запроса, мне нужно создать таблицу, связанную с обеими моими таблицами, которые будут заполнены параметрами, которые я хочу найти, а затем запустить запрос по этим параметрам? Я не уверен, как сделать доступ к этому, потому что единственный метод, который я знаю, - это заставить его искать один параметр или значение в текстовом поле в форме, но я не знаю, как заставить его запрашивать только запись внутри эта таблица связана с записями в таблице «тесты» с указанными тегами. Спасибо –

+0

Я попытался записать эту строку в аргумент критериев: [input tag1] И [input tag 2], но он ищет только записи, в которых есть оба тега. –

+0

Возможно, поскольку Иван предложил создать несколько запросов и объединить их результаты. –