TCS54321 Ответов: 1

Как объединить две строки в одну строку в базе данных SQL


сэр у меня есть sql таблица которая выглядит так:-

NAME  | SALARY  | MONTH

Ashish| 2500| Feb

Ashish| 3000| Mar


мне нужен результат этой таблицы, например:-

NAME  | SALARY  | MONTH

Ashish| 5500| Feb,Mar


Что я уже пробовал:

я пытаюсь сделать запрос, но он не работает для меня:

Выберите [имя], сумма (зарплата)
, STUFF ((SELECT', ' + A. Month FROM Table1 A
Где A. Имя=B.Таблица 1 для XML-пути(")),1,1,") Как [Месяц]
Из Табл. 1 Б
Группа По [Названию]

Jawad Ahmed Tanoli

каков результат вашего запроса? я думаю, что результат такой же, как вы и требовали

1 Ответов

Рейтинг:
0

Karthik_Mahalingam

пробовать

declare @table table 
(
NAME varchar(50),
 SALARY int,
MONTH varchar(250)
)
insert into @table(NAME,SALARY,MONTH)values( 'aa',2000,'Jan')
insert into @table(NAME,SALARY,MONTH)values( 'aa',3000,'Feb')
insert into @table(NAME,SALARY,MONTH)values( 'bb',1000,'Mar')
insert into @table(NAME,SALARY,MONTH)values( 'bb',3000,'Apr')
insert into @table(NAME,SALARY,MONTH)values( 'bb',2500,'Jun')
 

SELECT Name, Salary = sum(salary), Month = 
    STUFF((SELECT ', ' + MONTH
           FROM @table b 
           WHERE b.NAME = a.NAME 
          FOR XML PATH('')), 1, 2, '')
FROM @table a
GROUP BY NAME