SELECT DataSource1.publisher,
IIf(IsNull([CountProjectMGMT]),"na", Val(DataSource1.SumProjectMGMT/DataSource2.CountProjectMGMT)) AS AvgProjectMGMT,
IIf(IsNull([CountDesign]),"na", Val(DataSource1.SumDesign / DataSource3.CountDesign)) AS AvgDesign
FROM ((SELECT publisher,
SUM(IIf(IsNull([ps_projectmgmt]) OR [ps_projectmgmt]="na",0, Val([ps_projectmgmt]))) AS SumProjectMGMT,
SUM(IIf(IsNull([ps_projectmgmt]) OR [ps_projectmgmt]="na",0, Val([ps_projectmgmt]))) AS SumDesign
FROM evaluations
GROUP BY publisher) AS DataSource1
LEFT OUTER JOIN (SELECT publisher,
COUNT(ps_design) AS CountDesign
FROM evaluations AS Table_1_2
WHERE (ps_design <> "na")
GROUP BY publisher) AS DataSource3
ON DataSource3.publisher = DataSource1.publisher)
LEFT OUTER JOIN (SELECT publisher,
COUNT(ps_projectmgmt) AS CountProjectMGMT
FROM evaluations AS Table_1_1
WHERE (ps_projectmgmt <> "na")
GROUP BY publisher) AS DataSource2
ON DataSource2.publisher = DataSource1.publisher;
hans_v
All-Star
35986 Points
6550 Posts
Re: statement has a syntax error
Oct 03, 2011 01:55 PM|LINK
Try:
SELECT DataSource1.publisher,
IIf(IsNull([CountProjectMGMT]),"na", Val(DataSource1.SumProjectMGMT/DataSource2.CountProjectMGMT)) AS AvgProjectMGMT,
IIf(IsNull([CountDesign]),"na", Val(DataSource1.SumDesign / DataSource3.CountDesign)) AS AvgDesign
FROM ((SELECT publisher,
SUM(IIf(IsNull([ps_projectmgmt]) OR [ps_projectmgmt]="na",0, Val([ps_projectmgmt]))) AS SumProjectMGMT,
SUM(IIf(IsNull([ps_projectmgmt]) OR [ps_projectmgmt]="na",0, Val([ps_projectmgmt]))) AS SumDesign
FROM evaluations
GROUP BY publisher) AS DataSource1
LEFT OUTER JOIN (SELECT publisher,
COUNT(ps_design) AS CountDesign
FROM evaluations AS Table_1_2
WHERE (ps_design <> "na")
GROUP BY publisher) AS DataSource3
ON DataSource3.publisher = DataSource1.publisher)
LEFT OUTER JOIN (SELECT publisher,
COUNT(ps_projectmgmt) AS CountProjectMGMT
FROM evaluations AS Table_1_1
WHERE (ps_projectmgmt <> "na")
GROUP BY publisher) AS DataSource2
ON DataSource2.publisher = DataSource1.publisher;