内连接+子查询。 先用分组查询,查出每个商品的销量作为虚拟表,最后内连接商品表来查询题目要求的数据。

SELECT goods.*,t.total 
FROM goods,(SELECT trans.goods_id,sum(trans.count) total FROM trans GROUP BY trans.goods_id) t 
where goods.id = t.goods_id and goods.weight < 50 and t.total > 20 ORDER BY goods.id