select goods.id, name, weight, sum(count) as total from trans left join goods on trans.goods_id = goods.id where weight < 50 group by goods.id, name, weight having total > 20 order by goods.id

select goods.id, name, weight, sum(count) as total from trans left join goods on trans.goods_id = goods.id where weight < 50 group by goods.id, name, weight having total > 20 order by goods.id