我正在尝试在Access中创建子查询,但我收到一个错误消息,指出可以通过此子查询返回一条记录。我想找到宠物最多的前10家公司,然后我想知道那些宠物的名字。我从来没有创建过一个子查询,所以我不确定我的错在哪里。以下是我有:在Access中创建子查询
SELECT TOP 10 dbo_tGovenrnmentRegulatoryAgency.GovernmentRegulatoryAgency
(SELECT dbo_tPet.Pet
FROM dbo_tPet)
FROM dbo_tPet INNER JOIN dbo_tGovenrnmentRegulatoryAgency ON
dbo_tPet.GovernmentRegulatoryAgencyID =
dbo_tGovenrnmentRegulatoryAgency.GovernmentRegulatoryAgencyID
GROUP BY dbo_tGovenrnmentRegulatoryAgency.GovernmentRegulatoryAgency
ORDER BY Count(dbo_tPet.PetID) DESC;
不争议这个答案,但值得一提的是,Access中的嵌套查询通常非常慢(可惜,因为在几乎所有基于服务器的系统中,这绝对不是这种情况,嵌套查询被认为是最佳实践,因为它们明晰)。您可以将其重写为单个聚合查询。 – 2015-02-10 01:08:34
@BenMcIntyre - 继续,然后测试结果。 – 2015-02-10 19:45:41