Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase «««1234

concatenation Expand / Collapse
Author
Message
Posted Tuesday, August 21, 2012 11:43 AM


SSCommitted

SSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommittedSSCommitted

Group: General Forum Members
Last Login: Yesterday @ 10:35 AM
Points: 1,825, Visits: 2,175
ronmoses (8/21/2012)
I got it wrong on the assumption that data type conversion would take precedence over concatenation or addition.


Made the same assumption. Since I had never implicitly converted like this, I was under the misapprehension that the datatype evaluation would go before the operations. Thanks to OP for posting, as I learned something today.


Please don't go. The drones need you. They look up to you.
Connect to me on LinkedIn
Post #1347992
Posted Wednesday, August 22, 2012 12:03 AM


SSC Eights!

SSC Eights!SSC Eights!SSC Eights!SSC Eights!SSC Eights!SSC Eights!SSC Eights!SSC Eights!

Group: General Forum Members
Last Login: Today @ 8:22 AM
Points: 957, Visits: 2,181
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.
Post #1348195
Posted Wednesday, August 22, 2012 12:17 AM


SSChampion

SSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampion

Group: General Forum Members
Last Login: Today @ 7:11 AM
Points: 13,741, Visits: 10,715
Great question, thanks!



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 #1348198
Posted Wednesday, August 22, 2012 2:53 AM
Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Yesterday @ 2:50 AM
Points: 1,232, Visits: 2,217
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)
Post #1348257
Posted Thursday, August 23, 2012 8:35 AM


Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Today @ 7:15 AM
Points: 1,432, Visits: 1,059
I particularly liked this question because I got it wrong but shouldn't have!
Post #1349152
Posted Sunday, September 2, 2012 9:00 AM


SSCrazy Eights

SSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy EightsSSCrazy Eights

Group: General Forum Members
Last Login: Today @ 1:38 AM
Points: 8,843, Visits: 9,402
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
Post #1353226
« Prev Topic | Next Topic »

Add to briefcase «««1234

Permissions Expand / Collapse