[firebase-br] Unir sentenças SQL

tetraetila® tetraetila em gmail.com
Qua Jun 10 15:17:57 -03 2009


Olá Pessoal

Eu tenho a seguinte sentença que faz um insert a partir de um select, Ok!

insert into bal_patri ( a004_redu, a004_tipo, a004_estr1, a004_estr, 
a004_desc ) select a004_redu, a004_tipo, a004_estr as a004_estr1, a004_estr, 
a004_desc from a029004_tbl where a004_tipo = 'A'

Ok! Gero um arquivo com os dados.

Em outra sentença eu apuro o valor dos débitos:

select a005_debi, sum( a005_valo ) as DEBITO from a029005_tbl where 
a005_data <= '31.01.2008' group by a005_debi

e da mesma forma eu apuro os créditos:

select a005_cred, sum( a005_valo ) as CREDITO from a029005_tbl where 
a005_data <= '31.01.2008' group by a005_cred

e SAL_F = crédito - débito

Gero mais arquivos...

Eu gostaria de unir a primeira sentença um update com a segunda e terceira 
sentenças, ou seja fazer o insert com o select e
em seguinte o update de VR_DEBI e VR_CRED e SAL_F ( SAL_F equivale a 
VR_CRED - VR_DEBI ).

update bal_patri set VR_DEBI = (
select a005_debi, sum( a005_valo ) as DEBITO from a029005_tbl where 
a005_data <= '31.01.2008' group by a005_debi )

update bal_patri set VR_CRED = (
select a005_cred, sum( a005_valo ) as CREDITO from a029005_tbl where 
a005_data <= '31.01.2008' group by a005_cred )

update bal_patri set SAL_F = ( VR_CRED - VR_DEBI )

Isto tudo em uma única sentença, pois eu gero um arquivo tipo DBF para cada 
sentença e poderia gerar apenas um para a sentença inteira diminuiria bem as
linhas de código.


Algo assim. Obrigado!

Adilson 





Mais detalhes sobre a lista de discussão lista