举个例子 有一个人员信息表select * from 奇葩人员信息表结果:
ID 姓名 年龄
001 李大傻 78
002 王大锤 69
003 张三丰 999现在我想把这个表中人员信息的所有人的姓名 保存到一个变量'@奇葩集合'当中
DECLARE @奇葩集合 类型帮我指出,select @奇葩集合目标结果:
李大傻,王大锤,张三丰
分不多 题不难 就是我不会 请指教
ID 姓名 年龄
001 李大傻 78
002 王大锤 69
003 张三丰 999现在我想把这个表中人员信息的所有人的姓名 保存到一个变量'@奇葩集合'当中
DECLARE @奇葩集合 类型帮我指出,select @奇葩集合目标结果:
李大傻,王大锤,张三丰
分不多 题不难 就是我不会 请指教
SET @X=(SELECT [姓名] FROM [奇葩人员信息表] FRO XML AUTO )PRINT CONVERT(VARCHAR(MAX),@X)
SET @X=(SELECT [姓名] FROM [奇葩人员信息表] FOR XML AUTO )
PRINT CONVERT(VARCHAR(MAX),@X)
set @a=''
select @a=@a+','+姓名 from 奇葩人员信息表
select stuff(@a,1,1,'')
drop table Userinfo
Create table Userinfo
(
ID Varchar(12) primary key,
Name varchar(64) not null,
Age Int not null
)
Insert into Userinfo
Select '001' , '李大傻', 78
union
Select '002', '王大锤', 69
Union
Select '003' , '张三丰', 999Declare @Names Varchar(128) ;
with a as
(
Select Top 1 (Select Name + ',' From Userinfo for XML path('')) as Names
From Userinfo b
)
Select @Names = LEFT(Names , Len(Names) -1 ) From a
print @Names
drop table Userinfo
Create table Userinfo
(
ID Varchar(12) primary key,
Name varchar(64) not null,
Age Int not null
)
Insert into Userinfo
Select '001' , '李大傻', 78
union
Select '002', '王大锤', 69
Union
Select '003' , '张三丰', 999Declare @Names Varchar(128)Select @Names = ISNULL(@Names + ',', '') + Name From Userinfo
print @Names
恩人啊 为什么Declare @Names Varchar(128)
好使
Declare @Names char(128)
不好使 咱俩唠唠