Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

p4ul0c3s4r

Erro no select com MAX e MIN

Recommended Posts

Pessoal, tenho duas tabelas:

 

1) tb_assinantes (contém os dados do assinante)

 

tratamento | nome | nome2 | cxpostal | etc...

 

2) tb_assinantes_pagamentos (informa que o assinante x pagou da edicaoX ate edicaoY)

 

assinante | edicao1 | edicao 2 | valor | data

 

E preciso fazer um filtro por faixa de edicao pagas, por exemplo, vamos supor que no mes de janeiro ele pagou da edicao 1 até 10 (gerou uma linha na tabela) depois em fevereiro ele pagou da edicao 11 ate 20 (gerou outra linha) e por ai vai...

 

Então quero buscar o assinante que pagou por exemplo da edicao 5 ate 15, ou seja, nao posso encontrar duas respostas, mas sim somente uma e então preparei este SQL

 

SELECT tb1.tratamento AS tratamento, tb1.nome AS nome, tb1.nome2 AS nome2, tb1.cxpostal AS cxpostal, tb1.endereco AS endereco, tb1.numero AS numero, tb1.complemento AS complemento, tb1.bairro AS bairro, tb1.cidade AS cidade, tb1.estado AS estado, tb1.email AS email, tb1.telefone AS telefone, tb1.cep AS cep, tb1.comite AS comite, MIN(tb2.edicao1) AS edicao1, MAX(tb2.edicao2) AS edicao2

 

FROM tb_assinantes tb1 INNER JOIN tb_assinantes_pagamentos tb2 ON tb1.id = tb2.assinante

 

WHERE tb1.comite = '".$_POST['comite']."' AND MIN(tb2.edicao1) <= '".$_POST['edicao1']."' AND MAX(tb2.edicao2) >= '".$_POST['edicao2']."'

 

GROUP BY tratamento,nome,nome2,cxpostal,endereco,numero,complemento,bairro,cidade,estado,email,telefone,cep,comite

 

ORDER BY tb1.nome ASC

 

Mas além de não funcionar, ele da um erro do tipo: Descrição: Uso inválido de função de agrupamento (GROUP)

 

Alguém pode me ajudar a solucionar este problema?

 

Obrigado.

 

Paulo César

Compartilhar este post


Link para o post
Compartilhar em outros sites

No GROUP by use o nome das colunas e não seu aliases.

 

group by tb1.tratamento, tb1.nome, tb1.nome2 ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.