【发布时间】:2021-07-21 16:36:51
【问题描述】:
我目前有一个查询,在每个联合选择中,为了获得出现次数,我有类似的内容:
SELECT Order_Id, Order_Date,
C.cnt AS Order_Parts
FROM table1
INNER JOIN (SELECT Order_Id, count(Order_Id) as cnt
FROM table1
GROUP BY Order_Id) C ON table1.Order_Id = C.Order_Id
UNION SELECT Order_Id, Order_Date,
C.cnt AS Order_Parts
FROM table2
INNER JOIN (SELECT Order_Id, count(Order_Id) as cnt
FROM table2
GROUP BY Order_Id) C ON table2.Order_Id = C.Order_Id
它工作正常,但我正在重新组织它,以便 UNION 在 Query FROM 中,所以是这样的:
SELECT
Order_Id,Order_Date,C.cnt AS Order_Parts
FROM(
SELECT Order_Id, Order_Date
FROM table1
UNION SELECT Order_Id, Order_Date
FROM table2
) AS Parts
INNER JOIN (SELECT Order_Id, count(Order_Id) as cnt
FROM Parts
GROUP BY Order_Id) C ON Parts.Order_Id = C.Order_Id
但是 Access 向我抛出一个错误,说它找不到表或查询“零件”。我一生都无法弄清楚为什么它不能使用它;有人可以指导我出什么问题吗?
【问题讨论】:
标签: sql ms-access count inner-join