-1

I have one column in my query and multiple rows (100+). I need to have the rows combined with only a space between so that I end up with one row.

Example:

1
2
3
4
5

Would actually be

1 2 3 4 5
marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
user974061
  • 343
  • 1
  • 5
  • 17
  • 1
    @JNevill The title says 2008, but the question I marked as duplicate has answers for 2005+. – jpw Sep 10 '18 at 17:31

1 Answers1

0

You can try to use STUFF function.

CREATE TABLE T (Id int)

INSERT INTO t VALUES (1);
INSERT INTO t VALUES (2);
INSERT INTO t VALUES (3);
INSERT INTO t VALUES (4);
INSERT INTO t VALUES (5);

Query

SELECT 
  STUFF((
    SELECT ' ' + CAST(Id AS VARCHAR(MAX))  
    FROM T
    FOR XML PATH(''),TYPE).value('(./text())[1]','VARCHAR(MAX)')
  ,1,0,'') 

sqlfiddle

D-Shih
  • 44,943
  • 6
  • 31
  • 51