group by results设置在一行ms访问查询中

时间:2013-11-12 15:07:38

标签: sql ms-access excel-vba vba excel

我需要有关ms访问查询的帮助。我当前的分组是使用我的结果集添加其他行。

目前就是这样:

schoolsName organization    city    agent   total   organization_award  city_award  agent_award
John Boscoe 0   0   2   2           10000
John Boscoe 0   26  0   26      1000    
John Boscoe 0   2   2   2       4000    100000
John Boscoe 18  0   0   18  10000       
John Boscoe 3   3   0   3   5000    10000

我当前对ms访问的sql查询是:

SELECT 
schools.schoolsName, Count(schools.[organization]) AS organization, 
Count(schools.[city]) AS city, Count(schools.[agent]) AS agent, 
Count(schools.schoolsName) AS total, 
IIf((schools.[organization]) Like 'yes',Sum(schools.[dollaramount]),'') AS organization_award, 
IIf((schools.[city]) Like 'yes',Sum(schools.[dollaramount]),'') AS city_award, 
IIf((schools.[agent]) Like 'yes',Sum(schools.[dollaramount]),'') AS agent_award
FROM schools
GROUP BY schools.schoolsName, schools.[organization], schools.[city], schools.[agent];

如何更改上述查询以获取此结果集:

schoolsName organization    city    agent   total   organization_award  city_award  agent_award
John Boscoe 21  31  4   51  15000   15000   110000

1 个答案:

答案 0 :(得分:0)

不确定计数部分,但你试过这个吗?

    SELECT schools.schoolsName, 
           Count(schools.[organization]) AS organization, 
           Count(schools.[city]) AS city, 
           Count(schools.[agent]) AS agent, 
           Count(schools.schoolsName) AS total, 
           Sum(IIf((schools.[organization]) Like 'yes', schools.[dollaramount],0)) AS organization_award, 
           Sum(IIf((schools.[city]) Like 'yes', schools.[dollaramount],0)) AS city_award, 
           Sum(IIf((schools.[agent]) Like 'yes', schools.[dollaramount],0)) AS agent_award
      FROM schools
  GROUP BY schools.schoolsName;