Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/05/2010, 11:36
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 6 meses
Puntos: 774
Respuesta: Consulta SQL Ayuda

create table #suma(
id int identity,
nombre varchar(200),
dinero int
)

insert into #suma
select t1.nombre,sum(t1.dinero) as dinero from(
select id,nombre,dinero, 'tabla1' as tabla from #temp1
union
select id,nombre,dinero, 'tabla2' as tabla from #temp2
union
select id,nombre,dinero, 'tabla3' as tabla from #temp3
) t1
group by t1.nombre



create table #information
(
cliente varchar(200),
dinero int,
tablas varchar(200)
)

declare @x int
declare @y int
declare @total int
declare @cuantos int
declare @dinero int
declare @nombre varchar(200)
declare @table_name varchar(200)
declare @table varchar(200)

select @total=count(*) from #suma
set @x=1
set @y=1
while @x<=@total
begin
select @nombre=nombre, @dinero=dinero from #suma where id=@x


create table #table_name (
row_number int identity,
id int,
nombre varchar(200),
tabla varchar(200)
)
insert into #table_name (id,nombre,tabla)
select id,nombre, 'tabla1' as tabla from #temp1
where nombre=@nombre
union
select id,nombre, 'tabla2' as tabla from #temp2
where nombre=@nombre
union
select id,nombre,'tabla3' as tabla from #temp3
where nombre=@nombre
order by nombre

select @cuantos=count(*) from #table_name where nombre=@nombre

set @y=1
set @table_name=''
while @y<=@cuantos
begin
select @table=tabla from #table_name where nombre=@nombre and row_number=@y
set @table_name=@table_name + @table + ','
set @y=@y+1
end

drop table #table_name
insert into #information (cliente,dinero,tablas) values (@nombre,@dinero,@table_name)
set @x=@x+1
end

select * from #information


Con esta funcion obtienes lo que necesitas, prueba y me dices ;)

Saludos!!!