<p>Given the constraint of only using T-Sql in Sql Server 2005, is there a better way to remove the decimal point from a money datatype than a conversion to a varchar (here implicitly) and then a replace of the decimal point?</p>

<p>Here is what I have currently.</p>

<pre><code>SELECT REPLACE(1.23, '.', ''), REPLACE(19.99, '.', '')
</code></pre>

<p>Which returns the desired 123 and 1999, but I was wondering if there was a better way.  Any thoughts?</p>

[{'answer_id': 3897, 'author': 'Yaakov Ellis', 'author_id': 51, 'author_profile': 'https://Stackoverflow.com/users/51', 'pm_score': 4, 'selected': True, 'text': '<p>Multiply by 100 and then convert to an int.</p>\n'}, {'answer_id': 3899, 'author': 'Curt Hagenlocher', 'author_id': 533, 'author_profile': 'https://Stackoverflow.com/users/533', 'pm_score': 0, 'selected': False, 'text': "<p>Could you be a little more specific about the use case?  Removing the decimal point from the representation is a little unusual given that you'll lose all information about the scale.  Are you assuming that there will always be two digits?  If so, you could simplify multiply by 100 and then round before converting to a string.</p>\n"}, {'answer_id': 3974, 'author': 'Lance Fisher', 'author_id': 571, 'author_profile': 'https://Stackoverflow.com/users/571', 'pm_score': 0, 'selected': False, 'text': '<p>Keep in mind that the money data type can have up to 4 digits past the decimal.  Values with more than two digits might not work as expected for either your original solution or the x100 trick.</p>\n'}, {'answer_id': 5944, 'author': 'SQLMenace', 'author_id': 740, 'author_profile': 'https://Stackoverflow.com/users/740', 'pm_score': 2, 'selected': False, 'text': '<p>You should never ever use the money datatype to store monetary values. If you do any calculations you will get truncated results. Run the following to see what I mean</p>\n\n<pre><code>DECLARE\n@mon1 MONEY,\n@mon2 MONEY,\n@mon3 MONEY,\n@mon4 MONEY,\n@num1 DECIMAL(19,4),\n@num2 DECIMAL(19,4),\n@num3 DECIMAL(19,4),\n@num4 DECIMAL(19,4)\n\nSELECT\n@mon1 = 100, @mon2 = 339, @mon3 = 10000,\n@num1 = 100, @num2 = 339, @num3 = 10000\n\nSET @mon4 = @mon1/@mon2*@mon3\nSET @num4 = @num1/@num2*@num3\n\nSELECT @mon4 AS moneyresult,\n@num4 AS numericresult\n</code></pre>\n\n<p>Output:\n2949.0000    2949.8525</p>\n'}, {'answer_id': 886375, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 0, 'selected': False, 'text': '<p>Here is the magic:</p>\n\n<pre><code>DataFormatString="{0:c0}\n</code></pre>\n\n<p>This will remove the decimal places.</p>\n'}]
['https://Stackoverflow.com/questions/3894', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/76/']