reate table a (i_ID int, NAME varchar(20))
insert into a (i_id,name)
values(1,'abc')
create table b (i_ID int, NAME varchar(20),value varchar(2))
insert into b (i_id,name,value) values(1,'abc','x')
insert into b (i_id,name,value) values(1,'abc','y')
insert into b (i_id,name,value) values(1,'abc','z')
insert into b (i_id,name,value) values(2,'bcd','x')
-----------------------------------
create procedure up1 (@id int)
as
declare @var varchar(100)
select @var=''
select @var=@var+' '+rtrim(b.value) from a a inner join b b on a.NAME=B.NAME WHERE A.i_id=@id
select *,@var as r from a where i_id=@id
i_ID NAME r
----------- -------------------- ----------------------------------------------------------------------------------------------------
1 abc x y z x
create table #a (i int,ii int,a varchar(10))
insert into #a select 1,2,'1 2 3'
create table #b (i int,ii int)
insert into #b select 1,1
insert into #b select 2,1
insert into #b select 3,1
declare @sql varchar(30)
select @sql=''
select @sql=@sql+convert(varchar(30),i)+' ' from #b
where ii in(select i from #a where ii=2)
select * from #a where a=@sql