SELECT
goods.id,goods.name,
goods.weight AS weight,
SUM(trans.count) AS total
FROM goods
LEFT JOIN trans
ON goods.id=trans.goods_id
GROUP BY goods.id,goods.name
HAVING total>20 AND weight<50
ORDER BY goods.id ASC

SELECT
goods.id,goods.name,
goods.weight AS weight,
SUM(trans.count) AS total
FROM goods
LEFT JOIN trans
ON goods.id=trans.goods_id
GROUP BY goods.id,goods.name
HAVING total>20 AND weight<50
ORDER BY goods.id ASC