[firebase-br] Como Fazer SQL?

Magno System magno em speet.com.br
Seg Mar 30 14:51:11 -03 2009


O select inteiro:

select Cod_cliente,
         sum(F.Peso_coletado
            * (select V.Valor_kilo from Valores_cliente V
               where F.Cod_descricao = V.Cod_descricao )) as
total_valor_kilos,

          count(F.Codigo_montado* (select V.Valor_taxa_recolhimento
              from Valores_cliente V
               where F.Cod_descricao = V.Cod_descricao)) as 
total_valor_taxa,

          sum( F.Peso_coletado)as Total_Peso,
          sum( F.Qtd_bambonas) as Total_Bombonas,
          sum( F.Total_produtos) as Total_Produtos,
          count(F.Codigo_montado)as Quantia,
          LIST(F.Codigo_montado, ' - ')

          GROUP BY COD_CLIENTE

----- Original Message ----- 
From: "Zottis" <zottissistemas em brturbo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, March 30, 2009 2:14 PM
Subject: Re: [firebase-br] Como Fazer SQL?


Obrigado, Magno pela resposta, pegando sua dica, montei o SQL conforme a
minha necessidade, mas ta dando erro no
 Group By....

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid expression in the select list (not contained in either an aggregate
function or the GROUP BY clause).


Montei assim:

select Cod_cliente,
         sum(F.Peso_coletado)
            * (select V.Valor_kilo from Valores_cliente V
               where F.Cod_descricao = V.Cod_descricao )as
total_valor_kilos,

          count(F.Codigo_montado)* (select V.Valor_taxa_recolhimento
              from Valores_cliente V
               where F.Cod_descricao = V.Cod_descricao)as total_valor_taxa,

          sum( F.Peso_coletado)as Total_Peso,
          sum( F.Qtd_bambonas) as Total_Bombonas,
          sum( F.Total_produtos) as Total_Produtos,
          count(F.Codigo_montado)as Quantia,
          LIST(F.Codigo_montado, ' - ')

 from FAR_MTR F
WHERE F.Deletado = 'N' and F.Baixado ='S' AND F.Data_coleta between :DataI
and :DataF
   and F.Cod_cliente = :VarCod_Cliente
group by F.Cod_cliente





Zottis(TeamFB Users)

Zottis Sistemas - 2009 Ano XII
Programação Delphi/PHP/Firebird/MySQL

"Um homem só tem o direito de olhar
  a um outro de cima para baixo, quando
  vai ajuda-lo a levantar-se".
                   Gabriel Garcia Marquez
----- Original Message ----- 
From: "Magno System" <magno em speet.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, March 30, 2009 12:28 PM
Subject: Re: [firebase-br] Como Fazer SQL?


Supondo que seja a estrutura abaixo:

TabelaFAR_MRT tem os campos QUANTIDADERESIDUOS,  TIPORESIDUO

Tabela RESIDUOS tem os campo CODIGO, NOME, VALORRESIDUO

Poderia ficar assim:


select Cod_cliente,
          SUM(F.QUANTIDADERESIDUOS) * (SELECT R.VALORRESIDUOS FROM RESIDUOS
R WHERE R.CODIGO =  F.TIPORESIDUO) AS TOTALRESIDUOS,
          sum( F.Peso_coletado)as Total_Peso,
          sum( F.Qtd_bambonas) as Total_Bombonas,
          sum( F.Total_produtos) as Total_Produtos,
          sum(F.Valor_kilos_coletado)as total_valor_kilos,
          sum(F.Valor_taxa_recolhimento)as total_valor_taxa,
          count(F.Codigo_montado)as Quantia,
          LIST(F.Codigo_montado, ' - ')

 from FAR_MTR F
WHERE F.Deletado = 'N' and F.Baixado ='S' AND F.Data_coleta between :DataI
and :DataF
   and F.Cod_cliente = :VarCod_Cliente
group by F.Cod_cliente


----- Original Message ----- 
From: "Zottis" <zottissistemas em brturbo.com.br>
To: "lista Firebase" <lista em firebase.com.br>
Sent: Monday, March 30, 2009 11:43 AM
Subject: [firebase-br] Como Fazer SQL?


Pessoal, to com um problema,
tenho a seguinte SQL:
select Cod_cliente,
          sum( F.Peso_coletado)as Total_Peso,
          sum( F.Qtd_bambonas) as Total_Bombonas,
          sum( F.Total_produtos) as Total_Produtos,
          sum(F.Valor_kilos_coletado)as total_valor_kilos,
          sum(F.Valor_taxa_recolhimento)as total_valor_taxa,
          count(F.Codigo_montado)as Quantia,
          LIST(F.Codigo_montado, ' - ')

 from FAR_MTR F
WHERE F.Deletado = 'N' and F.Baixado ='S' AND F.Data_coleta between :DataI
and :DataF
   and F.Cod_cliente = :VarCod_Cliente
group by F.Cod_cliente


até aqui tudo bem, mas preciso colocar nela também uma soma
que depende de outra tabela

exemplo.

Na Tabela FAR_MTR é colocado que tipo de resíduo é,

e na Tabela de resíduos estão os valores, que variam dependendo o tipo de
resíduo,

como posso fazer um selct sum da FAR_MTR pegando os valores da tabela
Resíduos?

desde ja agradeço.




Zottis(TeamFB Users)

Zottis Sistemas - 2009 Ano XII
Programação Delphi/PHP/Firebird/MySQL

"Um homem só tem o direito de olhar
  a um outro de cima para baixo, quando
  vai ajuda-lo a levantar-se".
                   Gabriel Garcia Marquez
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


--------------------------------------------------------------------------------



No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.0.238 / Virus Database: 270.11.32/2030 - Release Date: 03/30/09
08:40:00


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


--------------------------------------------------------------------------------



No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.0.238 / Virus Database: 270.11.32/2030 - Release Date: 03/30/09 
08:40:00





Mais detalhes sobre a lista de discussão lista