Как использовать подстановочный знак в качестве опции для запроса в поле со списком в форме доступа? - PullRequest
0 голосов
/ 24 мая 2011

Я делаю форму в Access для поиска в базе данных.Я хочу иметь возможность использовать поле со списком, чтобы позволить пользователю знать значения, которые существуют в базе данных.В частности, что-то вроде это .Это прекрасно работает, однако я также хотел бы иметь возможность использовать подстановочный знак "*" в качестве опции.В списке значений это было бы так же просто, как "*";"value1";"value2";etc., но, похоже, это не работает при использовании запроса.

РЕДАКТИРОВАТЬ: Я нашел это .Это похоже на другой способ решения проблемы.Я все еще открыт для предложений.

1 Ответ

1 голос
/ 24 мая 2011

Скажите, что ваша комбинация использует этот оператор SELECT в качестве источника строки.

SELECT DISTINCT dept_name
FROM Departments
ORDER BY dept_name;

Если вам нужна строка с «*» в дополнение к строкам для уникальных названий отделов, вы можете использовать запрос UNION.

SELECT dept_name
FROM Departments
UNION
SELECT "*" AS dept_name
FROM SmallTable
ORDER BY 1;

Вам не нужно ключевое слово DISTINCT, потому что UNION возвращает только уникальные значения из объединенных наборов записей.

На самом деле вам не нужно псевдоним выражения поля ("*" AS dept_name) во втором SELECT ... ядро ​​базы данных будет счастливым, пока тип данных совместим с dept_name.

Я выбрал SmallTable во втором SELECT, потому что вам нужен только источник таблицы (или запроса или подзапроса) с одной строкой. Однако более чем один ряд не будет препятствием для заключения сделки, поскольку UNION отбрасывает дубликаты.

В любом случае, это мое лучшее предположение относительно того, что вы ищете. Если я угадала неправильно, уточните, что вы хотите, и кто-то наверняка даст вам лучший ответ.

...