Una consulta de selección seleccionando una declaración de selección
Ni siquiera sé si estoy haciendo esta consulta de la manera correcta. Hay unSandwiches
tabla que tiene unos 7 campos y 2 de ellos son comboboxes (Type
yBread
).
Así que hice una consulta que combina todos los valores de los cuadros combinados en una consulta, como esto:
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;
Obtengo los valores planos de las tablas ahora quiero contar todos los sándwiches debajo de cadaTypesAndBreads.TBName
. Tengo esto, solo para asegurarme de que funcione con todos los Sandwiches:
SELECT TypesAndBread.Type, TypesAndBread.TBName,
(SELECT Count(Sandwiches.[SandwichID]) As SandwichCount
FROM Sandwiches) As SandwichCount
FROM TypesAndBread;
Pero quiero hacer referencia al tipo actual y al TBName dentro de la subconsulta. Algo como esto:
SELECT TypesAndBread.Type, TypesAndBread.TBName,
(SELECT Count(Sandwiches.[SandwichID]) As SandwichCount
FROM Sandwiches
WHERE Sandwiches.[TypesAndBread.Type] = Sandwiches.[TypesAndBread.TBName]) As SandwichCount
FROM TypesAndBread;
Pero, por supuesto, esto no funciona. No pensé que lo haría, solo pensé en intentarlo. Estaba pensando en tal vez construir la consulta con VBA cuando abran el informe en el que se basará esta consulta.
Así que supongo que mi pregunta es: ¿Hay alguna forma de hacer referencia a los campos seleccionados actualmente en una subconsulta? ¿O hay una manera diferente de abordar esto?
Gracias por la ayuda
EDITAR: La estructura de mi mesa es así:
Sandwiches
campos de
| SandwichID | Name | Date Added | Chef | Sandwich Type | Bread | Reviewed By |
dóndeSandwich Type
yBread
Son campos de búsqueda para estas tablas:
Sandwiches Types
campos de
| Sandwich Type |
Breads
campos de
| Bread |
La consulta TypesAndBreads combinó los tipos de Sandwiches y las tablas de Breads, pero la razón de ello es para que pueda obtener el recuento de todos los sandwiches que tienen ese Tipo o pan. Un resultado como este:
+=============================================+
| Type | TBName | SandwichCount |
+=============================================+
| Sandwich Type | Turkey Club | 10 |
| Bread | Italian | 5 |
| Bread | Garlic | 8 |
+---------------------------------------------+
la primera fila del resultado de ejemplo dice básicamente que hay 10 sándwiches en el registro con el campo Tipo de sándwich igual al Club de Turquía.
Espero que eso lo explique mejor.