[firebase-br] RES: Ajuda com Join's
Ivan Guimarães Meirelles
igmeirelles em gmail.com
Qua Mar 21 15:25:40 -03 2007
Desculpa, faltou o group by e order by
select
Tipos.Cod_Tip, Tipos.Tipo,
sum (Gastos.Valor)
from Tipos
left join Gastos on Tipos.Cos_Tip = Gastos.Cos_Tip
and GASTOS.DATA BETWEEN :DATA_INICIAL AND :DATA_FINAL
group by Tipos.Cod_Tip, Tipos.Tipo
order by Tipos.Tipo
Assim deve funcionar...
Um abraço...
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Magnun Oliveira
Enviada em: quarta-feira, 21 de março de 2007 15:49
Para: lista em firebase.com.br
Assunto: [firebase-br] Ajuda com Join's
Tenho uma tabela de TIPOS e uma de GASTOS.
Preciso exibir todos os TIPOS q existem, e a soma dos GASTOS de cada TIPO,
caso nao exista nenhum GASTO para determinado TIPO, exibir NULL.
fiz o select abaixo e funcionou perfeitamente.
select
TIPOS.COD_TIP, TIPOS.TIPO,
sum (GASTOS.VALOR)
from TIPOS
left join GASTOS on TIPOS.COD_TIP = GASTOS.COD_TIP
group by TIPOS.COD_TIP, TIPOS.TIPO
order by TIPOS.TIPO
porem agora preciso colocar um filtro, entre DATAS, para a soma dos GASTOS e
continuar exibindo NULL para os TIPOS q nao tenham nenhum GASTO no periodo
selecionado. Fiz isso e nao deu certo, o select filtrou pelo intervalo, mas
nao exibiu os TIPOS com gasto NULL.
select
Tipos.Cod_Tip, Tipos.Tipo,
sum (Gastos.Valor)
from Tipos
left join Gastos on Tipos.Cos_Tip = Gastos.Cos_Tip
WHERE GASTOS.DATA BETWEEN :DATA_INICIAL AND :DATA_FINAL
group by Tipos.Cod_Tip, Tipos.Tipo
order by Tipos.Tipo
Alguem sabe como fazer?
Segunda duvida: Tenho uma tabela de CLIENTES. depois q colocar o filtro
entre datas nos GASTOS, e exibir todos os TIPOS, preciso colocar um outro
filtro e exibir apenas os CLIENTES escolhidos, 'AND CLIENTES.COD_CLI =
:CODIGO', mas minha tabela de CLIENTES se relaciona com GASTOS.
Como ficaria o left join na tabela de TIPOS, jah q ele se relaciona soh com
GASTOS?
Obrigado.
_________________________________________________________________
MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista