Чтобы избежать деления на на ноль , вы можете заменить ноль на NULL:
SELECT (a.sales_value / NULLIF(a.margin)) as GP
или применить собственное правило:
SELECT CASE
WHEN a.margin <> 0
THEN (a.sales_value / a.margin)
ELSE a.sales_value -- or 0 or 99 or whatever
END as GP