从一个字段中提取所有行,然后根据名称存储在一行中

extract all the rows from one field then store in one row based on the name

我想将 Lesion 列中的所有内容存储到一行中。 有可能这样做吗? 我该怎么做?

任何建议都会有所帮助!

试试这个

DECLARE @source TABLE ( name VARCHAR(100), lesion VARCHAR(20));

INSERT INTO @source(name , lesion)
VALUES ('Bob Desk', '123-456-7899'),
('Bob Desk', '123-456-7899'),
('Don Mouse', '123-456-5555'),
('Mike Keyboard', '123-456-7899'),
('Billy Power', '122-222-1134')



SELECT  DISTINCT name,STUFF(
             (SELECT ',' + lesion
              FROM @source s
              WHERE s.name = s2.name
              FOR XML PATH ('')) 
             , 1, 1, '')

             FROM @source s2