I have this query : 

```
SELECT ..... ,( CAST(col1 AS MONEY) / CAST (col2 AS MONEY) ) as calc1 from mytable...

```

(returns 1000 rows)

Now I need to add *more columns* based on `calc1` expression ( e.g. `calc2 = calc1 * 4`)

I don't want to do this : 

```
SELECT (CAST(col1 AS MONEY) / CAST(col2 AS MONEY)) AS calc1,    --same 
       (CAST(col1 AS MONEY) / CAST(col2 AS MONEY)) * 4 AS calc2,    -- dragged calc1 
       ((CAST(col1 AS MONEY) / CAST(col2 AS MONEY)) * 4) * 50 AS calc2, -- dragged calc2 
       (((CAST(col1 AS MONEY) / CAST(col2 AS MONEY)) * 4) * 50) * 60 AS calc2 -- dragged calc3 

```

visualization : the yellow part is repeating itself with added calculations...

![enter image description here](https://i.stack.imgur.com/K4nLn.png)

what is the best way of doing this ?