Recent PostsRecent Posts Popular TopicsPopular Topics
 Home Search Members Calendar Who's On

 Predict the outcome of the SQL statements Rate Topic Display Mode Topic Options
Author
 Message
 Posted Monday, November 01, 2010 10:24 PM
 SSC-Enthusiastic Group: General Forum Members Last Login: Friday, September 03, 2010 4:19 AM Points: 158, Visits: 72
 Comments posted to this topic are about the item Predict the outcome of the SQL statements
Post #1014270
 Posted Tuesday, November 02, 2010 12:16 AM
 SSCrazy Group: General Forum Members Last Login: Thursday, November 07, 2013 10:01 AM Points: 2,163, Visits: 2,181
 Nice question, thanks! Though I think the explanation left a little to be desired. It isn't just that the decimal type was used, it was that the decimal type was used and no precision/scale was specified, so the number got rounded down to 1.0 when it was converted.For example this results in the same thing as all of your float examples:`select Ceiling(convert(decimal(2, 1), 1.09))`Because with a scale of one specified it gets rounded to 1.1 before it goes to ceiling.
Post #1014294
 Posted Tuesday, November 02, 2010 3:35 AM
 SSCommitted Group: General Forum Members Last Login: Today @ 4:09 AM Points: 1,541, Visits: 5,608
 Knew the answer but had a brain fart and clicked the wrong option, oops!UMG Developer is right about the explanation.
Post #1014337
 Posted Tuesday, November 02, 2010 6:39 AM
 Ten Centuries Group: General Forum Members Last Login: Monday, November 25, 2013 12:19 PM Points: 1,378, Visits: 450
 Good question but I think a better explaination is:the default of decimal without parameters is (18,0) thus making 1.09 -> 1 and then the ceiling of 1 is 1
Post #1014419
 Posted Tuesday, November 02, 2010 6:59 AM
 Valued Member Group: General Forum Members Last Login: Thursday, April 18, 2013 5:41 AM Points: 71, Visits: 49
 Thank you Old Hand. I knew the ceiling function brought you up to the next integer, but I couldn't figure out why the decimal was any different than the float on this one! You're explanation was what I was missing. For some reason I thought the default precision was 2, not 0. I'll be sure to remember that the next time I use a decimal data type.
Post #1014432
 Posted Tuesday, November 02, 2010 7:06 AM
 SSCommitted Group: General Forum Members Last Login: Today @ 4:09 AM Points: 1,541, Visits: 5,608
 I hope one thing that everybody has learned from these questions is that you should never rely on default precision for anything - you will inevitably get it wrong sooner or later
Post #1014441
 Posted Tuesday, November 02, 2010 7:38 AM
 SSCertifiable Group: General Forum Members Last Login: Yesterday @ 12:20 PM Points: 7,931, Visits: 8,348
 Good question, but as some have already noted the explanation is a bit lacking.Also, the question was made too easy by the absence of the All 2s option as an answer choice - anyone who knows what ceiling means can eliminate all answers but the correct one with knowing anything at all about decimal or its default precision. Tom'S iomadh doigh a th’ air cu a mharbhadh gun a thachdadh le ìme
Post #1014472
 Posted Tuesday, November 02, 2010 9:55 AM
 Hall of Fame Group: General Forum Members Last Login: Today @ 7:56 AM Points: 3,605, Visits: 3,532
 Tom.Thomson (11/2/2010)Good question, but as some have already noted the explanation is a bit lacking.Also, the question was made too easy by the absence of the All 2s option as an answer choice - anyone who knows what ceiling means can eliminate all answers but the correct one with knowing anything at all about decimal or its default precision.Yes, I agree. The best wrong answer was missing.
Post #1014642
 Posted Tuesday, November 02, 2010 2:26 PM
 SSCoach Group: General Forum Members Last Login: Yesterday @ 11:05 PM Points: 19,457, Visits: 13,049
 Thanks for the question. Jason AKA CirqueDeSQLeilI have given a name to my pain...MCM SQL Server 2008SQL RNNRPosting Performance Based Questions - Gail ShawPosting Data Etiquette - Jeff ModenHidden RBAR - Jeff ModenVLFs and the Tran Log - Kimberly Tripp
Post #1014887
 Posted Wednesday, November 03, 2010 1:01 PM
 SSChampion Group: General Forum Members Last Login: Yesterday @ 1:29 PM Points: 11,189, Visits: 8,033
 Good question, although it was more about convert than about ceiling.A link to the msdn page for convert and decimal:http://msdn.microsoft.com/en-us/library/ms187928(SQL.90).aspx (convert)http://msdn.microsoft.com/en-us/library/ms187746.aspx (decimal/numeric)The last page describes the gotcha of this question in the explanation of the scale. How to post forum questions.Need an answer? No, you need a question.What’s the deal with Excel & SSIS?Member of LinkedIn. My blog at LessThanDot. MCSA SQL Server 2012 - MCSE Business Intelligence
Post #1015516

 Permissions