August 22, 2012 at 12:03 am
Thanks for the good question. 🙂
wish to see more like this.
(I guess this depends on the initial type of the data which in the first position.
For this "select '130'+'120'+1" it will give you 130121, but for this "select 1+'120'+'130'" it will give you 251 not 121130. It takes the next value and it converts to the first value's data-type and then so on...
select 0 + '130'+'120'+1 - this gives 251 (because the initial value type is number and it works for only int type)
select 0 + '130'+'120'+2.56 - and the decimal works only with the end value.)
ww; Raghu
--
The first and the hardest SQL statement I have wrote- "select * from customers" - and I was happy and felt smart.
August 22, 2012 at 12:17 am
Great question, thanks!
Need an answer? No, you need a question
My blog at https://sqlkover.com.
MCSE Business Intelligence - Microsoft Data Platform MVP
August 22, 2012 at 2:53 am
I guess this depends on the initial type of the data which in the first position.
Not entirely true. (Try '130' + 1 + '120' => 251)
If you see the links I posted earlier, the key in this case is datatype precedence. It takes the operands and applies the precedence rules - in this case, the integer takes priority, regardless of whether it's first or second.
http://msdn.microsoft.com/en-us/library/ms190276 (operator precedence)
http://msdn.microsoft.com/en-us/library/ms190309 (data type precedence)
August 23, 2012 at 8:35 am
I particularly liked this question because I got it wrong but shouldn't have!
September 2, 2012 at 9:00 am
Hugo Kornelis (8/21/2012)
A good question. I'll admit that I am surprised at the high number of incorrect answers; I would have expected 70 to 80 percent to get this right.I'm not surprised that the wrong answers are fairly evenly divided over the wrond answers; they are all very good distractors. Well done!
And Andrew, thank you for providing the links and explanation that really explain the results; they are a good addition to the explanation and references given bij Yousaf.
+1 - although I've noticed before that people get confused about evaluation order where operators have the same precedence, which probably accounts for some of the "251" answers.
Tom
Viewing 5 posts - 31 through 34 (of 34 total)
You must be logged in to reply to this topic. Login to reply