Запрос выбора, выбирающий оператор выбора
Я даже не знаю, правильно ли я делаю этот запрос. СуществуетSandwiches
таблица, которая имеет около 7 полей и 2 из них являются списками (Type
а такжеBread
).
Итак, я сделал запрос, который объединяет все значения комбинированных списков в один запрос, например так:
SELECT TypesAndBreads.TBName, TypesAndBreads.Type
FROM (SELECT [Sandwiches Types].[Sandwich Type] As TBName, "Sandwich Type" As Type
FROM [Sandwiches Types]
UNION ALL
SELECT Breads.Bread As TBName, "Bread" As Type
FROM Breads) AS TypesAndBreads;
Теперь я получаю фиксированные значения таблицTypesAndBreads.TBName
, У меня есть это, просто чтобы убедиться, что он работает со всеми сэндвичами:
SELECT TypesAndBread.Type, TypesAndBread.TBName,
(SELECT Count(Sandwiches.[SandwichID]) As SandwichCount
FROM Sandwiches) As SandwichCount
FROM TypesAndBread;
Но я хочу сослаться на текущий Type и TBName внутри подзапроса. Что-то вроде этого:
SELECT TypesAndBread.Type, TypesAndBread.TBName,
(SELECT Count(Sandwiches.[SandwichID]) As SandwichCount
FROM Sandwiches
WHERE Sandwiches.[TypesAndBread.Type] = Sandwiches.[TypesAndBread.TBName]) As SandwichCount
FROM TypesAndBread;
Но, конечно, это не работает. Я не думал, что это будет, просто подумал попробовать. Я думал о том, чтобы, возможно, построить запрос с VBA, когда они откроют Отчет, на котором будет основан этот запрос.
Итак, я думаю, мой вопрос: Есть ли способ ссылки на текущие выбранные поля в подзапросе? Или есть другой способ подойти к этому?
Спасибо за помощь
РЕДАКТИРОВАТЬ: Моя структура таблицы выглядит следующим образом:
Sandwiches
поля
| SandwichID | Name | Date Added | Chef | Sandwich Type | Bread | Reviewed By |
гдеSandwich Type
а такжеBread
поля поиска для этих таблиц:
Sandwiches Types
поля
| Sandwich Type |
Breads
поля
| Bread |
Запрос TypesAndBreads объединил таблицы типов сэндвичей и хлебов, но причина в том, что я могу получить счетчик всех сэндвичей с этим типом или хлебом. Результат как это:
+=============================================+
| Type | TBName | SandwichCount |
+=============================================+
| Sandwich Type | Turkey Club | 10 |
| Bread | Italian | 5 |
| Bread | Garlic | 8 |
+---------------------------------------------+
В первом ряду результата примера в основном говорится, что в записи записано 10 сэндвичей с полем «Тип сэндвича», равным Турции.
Я надеюсь, что это объясняет это лучше.