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

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