... assuming inbs is just using the first Group encountered for each OrderNo when Ordered By OrderNo ...
WITH t AS (
SELECT *, Row_Number() OVER (ORDER BY OrderNo) rn
FROM Orders )
SELECT t1.OrderNo,
t1.[Group],
CASE
WHEN t1.OrderNo = t2.OrderNo THEN 0
Else t1.Quantity
END AS Quantity
FROM t t1
LEFT JOIN t t2
ON t1.rn = t2.rn+1
EDIT: ... yeah, partition by & where rn = 1 is a much better idea than left joining - see below
Microsoft SQL Server Noobie