Uso de HAVING

23/01/2006 - 13:23 por Pedro Echavarria | Informe spam
Tengo una consulta como esta:

select cliente, balance=(select sum(t.valor) from transaccion t where
t.cliente=cl.cliente) from cliente cl


Pero quiero agregarle un filtro con HAVING (pensaba que servia para eso):

select cliente, balance=(select sum(t.valor) from transaccion t where
t.cliente=cl.cliente) from cliente cl
having balance>0

para que solo me devuelva los clientes que tienen balances positivos.


Pero no me lo acepta . Pensaba que servia para eso. Si no es para
eso, para que sirve entonces el HAVING ?

Como puedo resolver un caso como este (ojo caso cuando debe ponerse una
condicion de filtro basado en una columna que sea una expresion o subquery)?


Agradezco cualquier ayuda .


Pedro
 

Leer las respuestas

#1 Juan Carlos
23/01/2006 - 15:20 | Informe spam
Si lo utilizas de esta forma te funcionaria

select cliente, balance=(select sum(t.valor) from transaccion t where
t.cliente=cl.cliente having sum(T.valor)>0) from cliente cl

Saludos

"Pedro Echavarria" escribió en el mensaje
news:
Tengo una consulta como esta:

select cliente, balance=(select sum(t.valor) from transaccion t where
t.cliente=cl.cliente) from cliente cl


Pero quiero agregarle un filtro con HAVING (pensaba que servia para eso):

select cliente, balance=(select sum(t.valor) from transaccion t where
t.cliente=cl.cliente) from cliente cl
having balance>0

para que solo me devuelva los clientes que tienen balances positivos.


Pero no me lo acepta . Pensaba que servia para eso. Si no es para
eso, para que sirve entonces el HAVING ?

Como puedo resolver un caso como este (ojo caso cuando debe ponerse una
condicion de filtro basado en una columna que sea una expresion o
subquery)?


Agradezco cualquier ayuda .


Pedro

Preguntas similares