<p>I'm trying to determine the best way to truncate or drop extra decimal places in SQL without rounding.  For example:</p>

<pre><code>declare @value decimal(18,2)

set @value = 123.456
</code></pre>

<p>This will automatically round <code>@value</code> to be <code>123.46</code>, which is good in most cases.  However, for this project, I don't need that.  Is there a simple way to truncate the decimals I don't need?  I know I can use the <code>left()</code> function and convert back to a decimal.  Are there any other ways?</p>

```
```
select convert(int,@value)
```
```