A one-to-many join repeats each left row once per matching right row. An aggregate over the joined rows therefore sums the left value once per match, not once per entity.
SELECT SUM(o.amount) AS total FROM orders o JOIN shipments s ON s.order_id = o.id ;
SELECT SUM(o.amount) AS total FROM orders o WHERE EXISTS ( SELECT 1 FROM shipments s WHERE s.order_id = o.id );
$250 is a believable revenue number — the timebomb that passes review, ships, and misstates revenue by the fan-out ratio.
Semi-join with WHERE EXISTS to count each entity once, or pre-aggregate to the parent grain before joining the child table.
WHERE EXISTS (SELECT 1 FROM child c WHERE c.fk = base.id)