Através do discurso fica claro que o problema está em usar o VS2010 para escrever a consulta, pois usa o canônico
CONCAT() função limitada a 2 parâmetros. Provavelmente há uma maneira de mudar isso, mas não estou ciente disso. Uma alternativa:
SELECT '1'+'2'+'3'
Essa abordagem requer que valores não string sejam convertidos/convertidos em strings, bem como
NULL manipulação via ISNULL() ou COALESCE() :SELECT ISNULL(CAST(Col1 AS VARCHAR(50)),'')
+ COALESCE(CONVERT(VARCHAR(50),Col2),'')