select g.id, g.name, g.weight, a.cnt from goods g left join (select t.goods_id,sum(t.count) as cnt from trans t group by t.goods_id)a on a.goods_id=g.id and a.cnt>20 where g.weight<50

select g.id, g.name, g.weight, a.cnt from goods g left join (select t.goods_id,sum(t.count) as cnt from trans t group by t.goods_id)a on a.goods_id=g.id and a.cnt>20 where g.weight<50