数据库中,如何用SQL语句实现将某字段下的所有记录合成一条记录,用逗号隔开

2025-03-06 14:11:43
推荐回答(2个)
回答1:

DECLARE @temp VARCHAR(MAX);
SET @temp='';
SELECT  @temp=@temp+','+某字段 FROM 表;

SELECT  STUFF(@temp,1,1,SPACE(0));

SELECT  ','+某字段 FROM 表 FOR XML PATH('');

SELECT  STUFF((SELECT ','+ 某字段 FROM 表 FOR XML PATH('')),1,1,SPACE(0));

回答2:

可以是可以,但与原字段的数据类型及大小有关,如果原字段是文本类型数据,而且大小(字段的存储量)足够大(能够存储所有记录的数据+(记录数-1个)逗号),是可以的,否则不行。
如果字段不是文本类型绝对不可以。SQL数据库必须是NTEXT或IMAGE数据类型,ACCESS数据库必须是备注数据类型。