From: | Miguel de la Fuente <jmdelafuente(at)yahoo(dot)com(dot)ar> |
---|---|
To: | ruben avila galindo <ruben2218(at)hotmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: AYUDA CON SELECT COMPLEJOS |
Date: | 2006-08-03 00:27:20 |
Message-ID: | 20060803002720.21160.qmail@web52609.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
create table cab_factura
num_fact
tot_fact
create table cab_boleta
num_fact
tot_fact
create table cliente
cod_per
nom_per
Con esta consulta saco los montos totales de cada tabla de cada cliente y lo que quiero unir los dos montos pero no se como hacerlo
y me salen asi la consulta:
JOSE LACHIRA 165.50 <----------->esto es de boleta
JOSE LACHIRA 50.60 <------------>esto es de factura
RUBEN AVILA 150.00
RUBEN AVILA 300.00
y lo que quieren aca en mi empresa es saber el RANKING DE CLIENTES y la consulta deberia mostrar asi:
JOSE LACHIRA 216.10
RUBEN AVILA 450.00
espero que me ayuden amigos postgreanos con esta consulta y como podria hacerlo ya que recien empiezo en esta BD
CONSULTA SELECT :
select p.nom_per,sum(tot_fact) as importe from cab_factura c inner join documentos d on
d.cod_doc=c.cod_doc inner join cliente f on f.cod_cli=d.cod_per inner join persona p on p.cod_per=d.cod_per
where d.cod_per='0200001' group by p.nom_per
union all
select p.nom_per,sum(imp_tot) as importe from cab_boleta g inner join documentos d on
d.cod_doc=g.cod_doc inner join cliente v on v.cod_cli=d.cod_per inner join persona p on p.cod_per=d.cod_per
where d.cod_per='0200001' group by p.nom_per
Si mal no entendí, tendrías que hacer lo siguiente,
select a.nom_per,sum(a.tot_fact) from
(
select p.nom_per,sum(tot_fact) as importe from cab_factura c inner join documentos d on
d.cod_doc=c.cod_doc inner join cliente f on f.cod_cli=d.cod_per inner join persona p on p.cod_per=d.cod_per
where d.cod_per='0200001' group by p.nom_per
union all
select p.nom_per,sum(imp_tot) as importe from cab_boleta g inner join documentos d on
d.cod_doc=g.cod_doc inner join cliente v on v.cod_cli=d.cod_per inner join persona p on p.cod_per=d.cod_per
where d.cod_per='0200001' group by p.nom_per) a
group by a.nom_per
---------------------------------
Preguntá. Respondé. Descubrí.
Todo lo que querías saber, y lo que ni imaginabas,
está en Yahoo! Respuestas (Beta).
Probalo ya!
From | Date | Subject | |
---|---|---|---|
Next Message | Alejandro Gasca | 2006-08-03 02:30:29 | Re: postgres+net 1.1+sharpdevelop |
Previous Message | ruben avila galindo | 2006-08-03 00:17:00 | AYUDA CON SELECT COMPLEJOS |