2010另一道java笔试题(数据库),该怎么解决

2010另一道java笔试题(数据库)有4张表,分别是bill(单据表,)ID 主键FNamefmizDate业务日期fmarteryId 物类

2010另一道java笔试题(数据库)
有4张表,分别是

bill(单据表,)
ID 主键
FName
fmizDate业务日期
fmarteryId 物类关系表ID
fusrId 经办人关系ID
。。。。



maritery(物料表)
id(主键)
fname(物料名称)
fsorcID物料分类关系表ID
.......

sorcy(物料分类表)
id(主键)
fname(分类名称)
amcount(价格)
。。。。

User(经办人表)
ID(主键)
username(经办人名称)
。。。。。。。


写一sql实现对每一物料,每一经办人,在XXX到XXX日期内的价格合计,因为每张表的数据都有很多,要求效率要高,还要写出索引(好像是这么说的啊,我也记的不太清了,反正就是跟索引有关系)请高人指教

物料 经办人 从xxxx-xx-xx到 xxxx-xx-xx 价格
物料1 1 XXX 200
物料2 2 230
特料1 1 。。。 200
物料2 2 .... 300 
 




[解决办法]

SQL code
select m.id,u.id,sum(s.amcount)from bill b, maritery m, sorcy s, user uwhere b.fusrid = u.idand   b.fmarteryid = m.idand   m.fsorcid = s.idand   b.fmizdate between date1 and date2group by m.id, u.id