MS Access SQL连接两个表

时间:2018-06-24 17:05:38

标签: sql ms-access join

如何在MS Access中联接来自两个SQL语句的数据,以便它们显示为一个表:

第一个数据表

Select 
    W.[Local municipality] as Munic, 
    count(W.[Settlement Name]) 
from 
    tblSett as W
where 
    W.[Water] = 'Yes'
group by 
    W.[local municipality];

第二个数据表

Select 
    LM.Province, LM.[Local municipality], 
    count(LM.[Local Municipality]) as [Count], 
    sum(LM.Households) as TotalHouseholds 
from 
    tblSett AS LM
group by 
    LM.Province, LM.[Local Municipality]
order by 
    LM.Province;

我尝试了以下操作,但它显示了所有内容的总数,但未按[地方市]细分:

Select 
    LM.Province, LM.[Local municipality], 
    count(LM.[Local Municipality]) as [Count], 
    sum(LM.Households) as TotalHouseholds, 
    (Select count(W.[Settlement Name] as [Count2]) 
     from tblSett as W
     where W.[Water] = 'Yes') 
from 
    tblSett AS LM
group by 
    LM.Province, LM.[Local Municipality]
order by 
    LM.Province;

1 个答案:

答案 0 :(得分:0)

也许是这样:

Select 
    LM.Province, 
    LM.[Local municipality] As Munic, 
    count(*) as [Count],
    sum(abs([Water] = "yes")) As WaterCount,
    sum(LM.Households) as TotalHouseholds 
From 
    tblSett AS LM
group by 
    LM.Province, 
    LM.[Local Municipality]

但是您的两个查询具有不同的分组,因此您可能需要进行调整,但是您可以看到如何创建WaterCount。