SQL Group By

Delphi

03/05/2003

Pessoal Preciso Relacionar duas Tabela e Ao Mesmo tempo Agregar Campos

Estou Fazendo

SELECT tb_FormPgto.Codigo, tb_FormPgto.Descricao, tb_Vendas.Cod_Form_Pgto
from tb_FormPgto, tb_Vendas where tb_FormPgto.Codigo = tb_Vendas.Cod_Form_Pgto
group by cod_form_Pgto

Mas não Funciona! me ajudem


Cristiano

Cristiano

Curtidas 0

Respostas

Jeancamila

Jeancamila

03/05/2003

Tente assim! Uma vez utilizei e o problema era a ordem dos campos.

SELECT tb_Vendas.Cod_Form_Pgto, tb_FormPgto.Codigo, tb_FormPgto.Descricao
from tb_FormPgto, tb_Vendas where tb_FormPgto.Codigo = tb_Vendas.Cod_Form_Pgto
group by tb_Vendas.Cod_Form_Pgto


Acho que pode ser isso. Não tenho certeza mas vale a pena tentar!


GOSTEI 0
Jeancamila

Jeancamila

03/05/2003

Dê uma olhada na dica abaixo tirada do arquivo 750 dicas de delphi!


As funções de grupo operam sobre grupos de tuplas(linhas). Retornam resultados baseados em grupos de tuplas em vez de resultados de funções por tupla individual. A claúsula ´group by´ do comando ´select´ é utilizada para dividir tuplas em grupos menores.

A cláusula ´GROUP BY´ pode ser usada para dividir as tuplas de uma tabela em grupos menores. As funções de grupo devolvem uma informação sumarizada para cada grupo.

16) Apresente a média de salário pagos por departamento.

Resp:

SELECT DUPNUME, AVG(EMPSALA)

FROM EMP

GROUP BY DEPNUME;

Obs.: Qualquer coluna ou expressão na lista de seleção, que não for uma função agregada, deverá constar da claúsula ´group by´. Portanto é errado tentar impor uma ´restrição´ do tipo agregada na cláusula Where.


GOSTEI 0
Cristiano

Cristiano

03/05/2003

Estou recebendo o seguinte erro:

When GROUP BY exists, every simple field in projectors must in GROUP BY

Porque esse erro? é porque estou fazendo o relacionamento ?Eu utilizei

SELECT tb_Vendas.Cod_Form_Pgto, tb_FormPgto.Codigo, tb_FormPgto.Descricao
from tb_FormPgto, tb_Vendas where tb_FormPgto.Codigo = tb_Vendas.Cod_Form_Pgto
group by tb_Vendas.Cod_Form_Pgto


GOSTEI 0
Luger

Luger

03/05/2003

Tente isso !

SELECT tb_FormPgto.Codigo,
tb_FormPgto.Descricao,
from tb_FormPgto,
(
SELECT tb_Vendas.Cod_Form_Pgto CodFormPgto
from tb_FormPgto,
tb_Vendas
where tb_FormPgto.Codigo = tb_Vendas.Cod_Form_Pgto
group by tb_Vendas.cod_form_Pgto
) GrpVendas
where GrpVendas.CodFormPgto = tb_FormPgto.Codigo


GOSTEI 0
POSTAR