问题描述
我在ms访问中有两个表(表一是父表,表二是子表)与ID相关
表一:
表二:
我可以在不计算 TeamName 的情况下编写 sql 命令:
Select Table1.TackName,Sum(Table2.PaintingValue) as SumofPaintingValue
from (Table1 INNER JOIN
Table2
on (Table1.ID = Table2.fgk)
GROUP BY Table1.TackName
解决方法
试试这个
Select TrackName,Sum(PaintingValue) as SumOfPaintingValue,Dcount( "TrackName","Table1","TrackName='" & a.TrackName & "'") as CountOfTeamName from Table1 as a INNER JOIN Table2 as b ON a.ID = b.fgk
group by TrackName
或
创建两个保存的查询
qryA
Select TrackName,count(TrackName) as CountOfTeamName from Table1 as a group by TrackName
qryB
Select TrackName,Sum(PaintingValue) as SumOfPaintingValue from Table1 as a INNER JOIN Table2 as b ON a.ID = b.fgk group by TrackName
然后使用下面的结果
Select qryA.TrackName,SumOfPaintingValue,CountOfTeamName from qryA INNER JOIN qryB on qryA.TrackName = qryB.TrackName
我目前无法对此进行测试,但我认为相关查询应该可以解决问题:
Select
Table1.TackName,Sum(Table2.PaintingValue) as SumofPaintingValue,(select count(TeamName) from table1 t1 where t1.TrackName=table1.TrackName
group by TeamName) as CountOfTeams
from Table1 INNER JOIN Table2 on (Table1.ID = Table2.fgk)
GROUP BY Table1.TackName