我甚至不知道我是否以正确的方式执行此查询。 有一个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 |
+---------------------------------------------+
的例子结果的第一行basicly说,有10个三明治与三明治类型字段等于土耳其俱乐部纪录。
我希望能更好地解释它。
我发现这有点混乱。你可以发布你的表格结构和所需的输出吗? – RedFilter 2010-01-11 18:24:45
我添加了表结构和一些所需的输出,希望有所帮助。感谢您的评论。 – 2010-01-11 20:04:17