Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server:Beste Möglichkeit, mehrere Spalten zu verketten?

Durch den Diskurs wird deutlich, dass das Problem in der Verwendung von VS2010 zum Schreiben der Abfrage liegt, da es den kanonischen CONCAT() verwendet Funktion, die auf 2 Parameter begrenzt ist. Es gibt wahrscheinlich eine Möglichkeit, das zu ändern, aber ich bin mir dessen nicht bewusst.

Eine Alternative:

SELECT '1'+'2'+'3'

Dieser Ansatz erfordert, dass Nicht-String-Werte in Strings umgewandelt/konvertiert werden, sowie NULL Handhabung über ISNULL() oder COALESCE() :

SELECT  ISNULL(CAST(Col1 AS VARCHAR(50)),'')
      + COALESCE(CONVERT(VARCHAR(50),Col2),'')