请参阅我想要实现的逻辑(更容易在表格中显示而不是在文本中描述):
使用python,我能够使用下面的代码实现我想要的表:
df_3 = df_2.groupby(['a', 'b', 'c'])['reqmnt'].apply(' '.join).reset_index()
我如何在SQL中执行此操作?
答案 0 :(得分:0)
以下内容适用于您:
DECLARE @T table
(
a varchar(10)
, b varchar(10)
, c varchar(10)
, reqmnt varchar(255)
)
INSERT INTO @T (a, b, c, reqmnt)
VALUES
('AC1', 'BA2', 'test', 'C1')
, ('AC1', 'BA2', 'test', 'PAN')
, ('AC1', 'BA2', 'test', 'Woot')
SELECT DISTINCT
a
, b
, c
,
RTRIM(
(
SELECT reqmnt + ' '
FROM @T t2
WHERE
t2.a = t1.a
AND t2.b = t1.b
AND t2.c = t1.c
ORDER BY reqmnt -- this line is optional
FOR XML PATH ('')
)
) reqmnt
FROM @T t1