select sum(b.inmoney) from a
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
and code like 'mc%' --限定查询的大类为木材,要查询其他的大类就更改这里
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
and code like 'mc%' --限定查询的大类为木材,要查询其他的大类就更改这里
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
and code like 'mc%' --限定查询的大类为木材,要查询其他的大类就更改这里这个语句是建立在inmoney理解为利润的基础上的,忘了乘以数量。select sum(b.inmoney*a.number) from a
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
and code like 'mc%' --限定查询的大类为木材,要查询其他的大类就更改这里
outmoney出库价格
summoney价格合计
number数量
大类的code命名有规则么?如果都是两位英文表示一个大类的话,可以这样,select left(b.code,2),sum(b.inmoney*a.number) from a
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
group by left(b.code,2)
order by left(b.code,2)
select left(b.code,2),sum((a.outmoney-b.inmoney)*a.number) from a
left outer join b on a.code=b.code
where convert(varchar(7),a.date,120)=convert(varchar(7),getdate(),120) --限定查询日期为本月
group by left(b.code,2)
order by left(b.code,2)