求助SQL 两行变一行(或者多行)

姓名            电话
张三            12345678
张三            98765432   

表格中同一人有多个电话号码,怎样写语句能得到下面的效果:
姓名            电话
张三            12345678|98765432

作者: zjj32167   发布时间: 2011-07-07

select 姓名,stuff((select '|'+rtrim(电话) from tb where k.姓名=姓名 for xml path('')),1,1,'')
from tb k

试试吧

作者: feixianxxx   发布时间: 2011-07-07

斑竹的“where k.姓名=姓名” 是不是说让我写句子的时候直接写“where k.姓名 like ‘张三’”?如果表格里有很多人,我批量合并怎么办,不排除一个人有10个电话的可能性哦

作者: zjj32167   发布时间: 2011-07-07