declare @sql varchar(8000),@table_id varchar(20)
select @sql=''
declare ytbelwxg cursor for select distinct table_id from 主表
open ytbelwxg
fetch next from ytbelwxg into @table_id
while @@fetch_status=0
begin
select @sql=@sql+'select 主表.id,主表.x,'+@table_id+'.y from 主表,'+@table_id+' where 主表.id='+@table_id+'.id union all '
fetch next from ytbelwxg into @table_id
end
close ytbelwxg
deallocate ytbelwxg
select @sql=left(@sql,len(@sql)-len('union all '))
print @sql
exec (@sql)