[firebase-br] RES: Problema com SQL
José Roberto Siqueira
rmgr-listas em rmgr.com.br
Qui Abr 12 13:25:48 -03 2007
Infelizmente o resultado é o mesmo após ter realizado as alterações que você
sugeriu.
Por exemplo, se eu tenho dois produtos vendidos no dia 01/04 e o total de
produtos vendidos neste dia for 50, ele retorna os dois produtos e a qtde.
de cada um deles é 50, ou seja, ele totaliza o dia e atribue este total a
todos os produtos vendidos no dia 01/04.
Creio que pelo fato da tabela MASTER não conter o campo com o Cód. Do
Produto, não estou conseguindo fazer esta totalização.
Obrigado pela ajuda.
José Roberto Siqueira
MSN..: jrsiqueira em hotmail.com | SkypeID: jrsiqueira
GMail: jrsiqueira | ICQ....: 170327096
São Paulo-SP-Brasil
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Claudio O2
Enviada em: quinta-feira, 12 de abril de 2007 11:36
Para: rmgr-listas em rmgr.com.br; FireBase
Assunto: Re: [firebase-br] Problema com SQL
Amigo, fiz uma rotina parecida aqui com tabelas parecidas e obtive
resultado.
Segue select
select mov.documento, mov.fil_orig, mov.nr_cto, mov.dt_emissao,
sum(nfs.vlr_mercadoria) as vl_merc from stwopetmov mov left join stwopetnota
nfs on (nfs.documento = mov.documento) and (nfs.fil_orig = mov.fil_orig) and
(nfs.nr_cto = mov.nr_cto) where mov.dt_emissao between ('01.04.2006') AND
('03.04.2006') group by mov.documento, mov.fil_orig, mov.nr_cto,
mov.dt_emissao order by mov.documento, mov.fil_orig, mov.nr_cto,
mov.dt_emissao
De diferente da sua select eu pus os parametros de data com . e nao / e fora
isso usei o left join. Mas testei com o inner tb e funcionou.
Tente trocar seus parametros de data e rode pra ver.
[]´s
José Roberto Siqueira escreveu:
> Bom Dia Pessoal
>
> Por gentileza, necessito da ajuda dos colegas para resolver um
> problema que estou enfrentando com uma instrução SQL.
>
> Possuo duas tabelas com estas estruturas:
>
> Tabela: MASTER Campos: MOV_LANC -> Código de Lançamento
> MOV_DATA -> data do
> lançamento
> MOV_VALOR -> valor do lançamento
>
> Tabela: DETALHE Campos: MOV_LANC -> Código de
> Lançamento
> MOV_PRODU -> Código do
> Produto
> MOV_QTDE -> Qtde
>
> O que estou tentando fazer sem sucesso, é exibir um totalizador por
> Data e Produto, por exemplo,
>
> DATA PRODUTO QTDE
> ---- ------- ----
> 01/04/07 0010 3
> 01/04/07 0030 10
> 01/04/07 0070 35
> 01/04/07 00130 100
> 05/04/07 0010 14
> 05/04/07 0018 1
> 11/04/07 0010 9
> 11/04/07 0030 7
> 11/04/07 00100 300
> 11/04/07 00307 187
> 15/04/07 0010 4
> 16/04/07 0010 7
> 22/04/07 00188 3
> 22/04/07 00177 3
> 22/04/07 00189 3
>
> Ou seja, quero totalizar por dia e dentro de cada dia por produto.
>
> O que está ocorrendo é está sendo agrupado por data corretamente,
> porém, no produto está sendo exibido o total geral e não por data.
>
> A instrução que estou aplicando é esta:
>
> SELECT
> MASTER.MOV_DATA,
> DETALHE.MOV_PROD,
> SUM(MASTER.MOV_VALOR)
> FROM MASTER INNER JOIN DETALHE
> ON
> DETALHE.MOV_LANC = MASTER.MOV_LANC
> WHERE
> MASTER.MOV_DATA BETWEEN ('01/04/2007') AND ('30/04/2007') GROUP BY
> MASTER.MOV_DATA,DETALHE.MOV_PRODU ORDER BY
> MASTER.MOV_DATA,DETALHE.MOV_PRODU
>
> Agradeço qualque ajuda.
>
> Abraços
>
> José Roberto Siqueira
> MSN..: jrsiqueira em hotmail.com | SkypeID: jrsiqueira
> GMail: jrsiqueira | ICQ....: 170327096
> São Paulo-SP-Brasil
>
>
> ______________________________________________
> 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
>
>
>
--
______________________________________________
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