un problema

20/05/2004 - 15:34 por Jorge Luis Medrano | Informe spam
Muy buenas a todos

Últimamente he estado con muchas consultas, y bueno... nuevamente vengo
con una un poco extraña para mí, la cual puede tener una solución fácil...
pero bueno... esta es mi consulta:

Estoy generando una balanza comercial, la cual tiene unos números de
cuentas en base a un select, el cual hace join con dos tablas: importación y
exportación, cree las dos tablas temporales sumarizadas por cuentas, y el
problema es que en exportacion me aparecen 1263 filas, y en importacion 1202
y cuando corro el query, me aparecen 1204, lo que por lógica no me toma las
que solo tienen importación, o solo exportación.

Hay alguna forma de que aparezcan esas cuentas???

el código es este:


select anyo,t_valor,capitulo, sum(valor) val
into #SumSacI
from importacion
group by anyo, t_valor, capitulo
order by anyo, t_valor, capitulo

select anyo,t_valor,capitulo, sum(valor) val
into #SumSacE
from exportacion
group by anyo, t_valor, capitulo
order by anyo, t_valor, capitulo

select i.anyo, i.t_valor, i.capitulo, e.val vale, i.val vali
from #SumSacI i right outer join #SumSacE e --, capitulos c
where (e.anyo = i.anyo) and (e.t_valor = i.t_valor) --and (c.capitulo e.capitulo) and (c.capitulo = i.capitulo)
order by e.anyo, e.t_valor, e.capitulo

drop table #SumSacI
drop table #SumSacE

go
 

Leer las respuestas

#1 poker
20/05/2004 - 16:10 | Informe spam
Prueba con "full join"
Esto te devolverá todas las filas de las dos tablas, existan o no en la otra
tabla.

"Jorge Luis Medrano" escribió en el mensaje
news:
Muy buenas a todos

Últimamente he estado con muchas consultas, y bueno... nuevamente


vengo
con una un poco extraña para mí, la cual puede tener una solución fácil...
pero bueno... esta es mi consulta:

Estoy generando una balanza comercial, la cual tiene unos números de
cuentas en base a un select, el cual hace join con dos tablas: importación


y
exportación, cree las dos tablas temporales sumarizadas por cuentas, y el
problema es que en exportacion me aparecen 1263 filas, y en importacion


1202
y cuando corro el query, me aparecen 1204, lo que por lógica no me toma


las
que solo tienen importación, o solo exportación.

Hay alguna forma de que aparezcan esas cuentas???

el código es este:


select anyo,t_valor,capitulo, sum(valor) val
into #SumSacI
from importacion
group by anyo, t_valor, capitulo
order by anyo, t_valor, capitulo

select anyo,t_valor,capitulo, sum(valor) val
into #SumSacE
from exportacion
group by anyo, t_valor, capitulo
order by anyo, t_valor, capitulo

select i.anyo, i.t_valor, i.capitulo, e.val vale, i.val vali
from #SumSacI i right outer join #SumSacE e --, capitulos c
where (e.anyo = i.anyo) and (e.t_valor = i.t_valor) --and (c.capitulo > e.capitulo) and (c.capitulo = i.capitulo)
order by e.anyo, e.t_valor, e.capitulo

drop table #SumSacI
drop table #SumSacE

go


Preguntas similares