Pretty sure the answer is on the ground, but i can't see it.. Code:

```
DECLARE @f float = 894589.4;
SELECT @f;
EXEC ('SELECT '+@f)

```

> 
> **894589.4**
> **894589**
> 
> 
> 

Why? More than that if:

```
DECLARE @f float = 1.4;

```

> 
> **1.4 1.4**
> 
> 
> 

But what really makes me confuse is - this one

```
 DECLARE @f float = 1234567.4;

```

> 
> 1234567.4 1234570
> 
> 
>