Выберите несколько данных из одного столбца и обновите результат объединения в другую таблицу - PullRequest
1 голос
/ 11 декабря 2019

У меня есть таблица 'таблица A', как показано ниже, и я хочу выделить эти данные в один столбец, и результат обновит таблицу B

+-----------+
| ID | Name |
+-----------+
| 1  |a     |
+-----------+
| 2  |b     |
+-----------+
| 3  |c     |
+-----------+

Результат:

Name
-----
a b c

Ответы [ 3 ]

2 голосов
/ 11 декабря 2019

Использование STRING_AGG()

SELECT
    STRING_AGG(name,' ') Name
FROM
    yourtable
1 голос
/ 11 декабря 2019

Вы также можете использовать функцию stuff().

select
   stuff((select (' ' + cast([name] as varchar(30)) )
                      from test2 t2
                        for xml path('')
                    ), 1, 1, '' )
0 голосов
/ 11 декабря 2019

Попробуйте запрос ниже:

Declare @Names varchar(max)
SELECT @Names = COALESCE(@Names + ', ', '') + Name 
FROM TableA

INSERT INTO TableB(Name)
SELECT REPLACE(@Names,',',' ')
...