• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

fil79

dúvida SQL

4 mensagens neste tópico

Boas

tenho esta query para listar clientes e nela faço uma conta onde aparece a subtracção do total de apolices com as apolices anuladas (se for maior que zero tem apólices em vigor):

SELECT cliente.nome, morada1, morada1b, cp1, localidade1, (
Count( apolice.apolice_id ) - SUM( apolice.anulada ) 
) AS total
FROM cliente
INNER JOIN apolice ON ( cliente.cliente_id = apolice.tomador ) 
WHERE activo =1
GROUP BY cliente.cliente_id

basicamente pretendo que sejam apenas listados os clientes que tenham apolices em vigor

ou seja onde o total seja maior que zero, já tentei adicionar essa clausula no WHERE mas dá sempre erro..Desde já agradeço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

assim dá erro(#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'having total>'0' GROUP BY cliente.cliente_id LIMIT 0, 30' at line 6):

SELECT cliente.nome, morada1, morada1b, cp1, localidade1, (
Count( apolice.apolice_id ) - SUM( apolice.anulada ) 
) AS total
FROM cliente
INNER JOIN apolice ON ( cliente.cliente_id = apolice.tomador ) 
WHERE activo =1 and having total>0
GROUP BY cliente.cliente_id
LIMIT 0 , 30

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites


SELECT cliente.nome, morada1, morada1b, cp1, localidade1, (
Count( apolice.apolice_id ) - SUM( apolice.anulada ) ) AS total
FROM cliente
INNER JOIN apolice ON ( cliente.cliente_id = apolice.tomador ) 
WHERE activo =1
GROUP BY cliente.cliente_id
HAVING total > '0'
LIMIT 0 , 30

Obrigadão :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora