SQL分组字符串相连

实例应用:

SELECT spmc, 
STUFF(
     ( 
      SELECT ','+ pos FROM hwpos a WHERE b.spmc = a.spmc order by pos FOR XML PATH('')
     ),1 ,1, '') pos
FROM hwpos b 
GROUP BY spmc

 

原表数据

pos    spdm    spmc
A-0-1-1    7778100299    USAY2995
A-0-2-1    6922266440090    NULL
7778100299    NULL    NULL
7778100299    NULL    NULL
A-0-2-2    7778100299    USAY2995
B-1-2-2    5689    USAY2996
B-1-22-3    5689    USAY2999
B-1-22-3    5689    USAY2910
B-3-22-3    5689    USAY29150
B-0-22-3    5689    USAY2999
A-0-1-2    7778100299    USAY2995

分组相连后数据:

spmc    pos
USAY2995    A-0-1-1,A-0-1-2,A-0-2-2
USAY2999    B-0-22-3,B-1-22-3
USAY2996    B-1-2-2
USAY2910    B-1-22-3
USAY29150    B-3-22-3

 

 

你可能感兴趣的:(MSSQL)