I would prefer that you gave a better answer/reason for the result of the first expression being 1 instead of 2. The reason is not simply because of the use of the DECIMAL datatype. It is because no precision and scale was specified. The default precision is 18 and the default scale is 0. This results in rounding to zero decimal places (i.e. it effectively results in an integer). In this situation, the floor function simply returns the value (it doesn't need to do anything since the DECIMAL (18,0) value is the same as the result of the floor function).
Jason...AKA CirqueDeSQLeil _______________________________________________ I have given a name to my pain...MCM SQL Server, MVP SQL RNNR Posting Performance Based Questions - Gail Shaw[/url] Learn Extended Events