Sql microsoft access数据库引擎找不到输入表或查询“Test”。确保它存在并且其名称拼写正确

Sql microsoft access数据库引擎找不到输入表或查询“Test”。确保它存在并且其名称拼写正确,sql,ms-access,ms-access-2010,union-all,Sql,Ms Access,Ms Access 2010,Union All,在access 2010中获取以下错误 the Microsoft access database engine cannot find the input table or query 'Test'. Make sure it exists and that its name is spelled correctly. 跑步的时候, SELECT TEST.[CATEGORY CODE] AS CATEGORYCODE , TEST.[SAMPLE COMPOSITI

在access 2010中获取以下错误

the Microsoft access database engine cannot find the input table or query 'Test'. 
Make sure it exists and that its name is spelled correctly.
跑步的时候,

SELECT 
      TEST.[CATEGORY CODE] AS CATEGORYCODE
    , TEST.[SAMPLE COMPOSITION] AS SAMPLECOMPOSITION
    , Sum(TEST.[WPI]) AS [SumOfWPI]
    , Sum(TEST.[Mean Freq Year Fav]) AS [SumOfMean Freq Year Fav] 
FROM 
(
    SELECT * 
    FROM DATA1 
    WHERE DATA1.[CATEGORY CODE] IN (
            SELECT DISTINCT CODES.[CATEGORY CODE] 
            FROM CODES
        ) 

    UNION ALL 

    SELECT * 
    FROM DATA2 
    WHERE DATA2.[CATEGORY CODE] IN (
            SELECT DISTINCT CODES.[CATEGORY CODE] 
            FROM CODES
        ) 
) AS TEST 
WHERE TEST.[COUNTRY] = 'UNITED STATES' 
    AND TEST.[SAMPLE COMPOSITION] IN (
        SELECT DISTINCT TEST.[SAMPLE COMPOSITION] 
        FROM TEST
    ) 
    AND TEST.[CATEGORY CODE] IN (
        SELECT DISTINCT CODES.[CATEGORY CODE] 
        FROM CODES
    ) 
GROUP BY TEST.[CATEGORY CODE], TEST.[SAMPLE COMPOSITION] 
ORDER BY TEST.[CATEGORY CODE];
我正在创建一个第四个表测试,使用union all by clubbing 2个表Data1和Data2,并确保仅记录从代码表中获取的类别代码。你知道为什么会给我这个错误吗

如果我删除这一行,它是union all创建的表的自联接: 并从测试中选择不同测试中的测试。[样本组成]

我可以运行查询

另外,现在我已经指定了COUNTRY=美国。但是我如何指定COUNTRY=美国或COUNTRY=所有国家,这样我就可以得到每个国家的总数


目前,我正在进行多标准自动筛选以实现这一目标,但这需要1.5天的时间,因为在对2个表进行聚类后,数据约为92000条记录。因此,尝试访问以实现相同的目标。如果有人可以帮助我,那么我可以发送一个包含数据的示例文件。

在创建测试之前,您不能引用它,并且您正在创建它作为查询的结果。您将不得不使用两个查询来完成这项工作,因为您需要联合中的所有结果


美国国家将回答您的第二个问题。

我相信有办法解决,而不是设置两个查询。关于我的第二个问题,我如何显示包括美国在内的所有国家?所有国家都应该是COUNTRY=*我可以得到类似于WHERE COUNTRY的数据,比如*,United States,United States,然后得到每个国家的总数吗?我想没有人知道。试着像这样做:IIf[国家]=*,United States,美国为TestCol,然后您可以按该列分组。