I have this statement (SQL Server 2012):
SELECT ROUND(CAST(50.9685 as float), 3) AS Col1 INTO #Test
I would like to see the result '50.969', but in fact I see '50.968'. When using decimal(10,5) instead of float, for example, then the result will be as expected.
Why does this happen and how can I fix this?