Genom diskurs är det tydligt att problemet ligger i att använda VS2010 för att skriva frågan, eftersom den använder den kanoniska CONCAT()
funktion som är begränsad till 2 parametrar. Det finns förmodligen ett sätt att ändra på det, men jag är inte medveten om det.
Ett alternativ:
SELECT '1'+'2'+'3'
Detta tillvägagångssätt kräver att icke-strängvärden casts/konverteras till strängar, såväl som NULL
hantering via ISNULL()
eller COALESCE()
:
SELECT ISNULL(CAST(Col1 AS VARCHAR(50)),'')
+ COALESCE(CONVERT(VARCHAR(50),Col2),'')