Re: duda con query

From: Lennin Caro <lennin(dot)caro(at)yahoo(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org, Aldo Quezada <huincha(at)gmail(dot)com>
Subject: Re: duda con query
Date: 2009-07-10 14:25:20
Message-ID: 526345.42208.qm@web59511.mail.ac4.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

--- On Thu, 7/9/09, Aldo Quezada <huincha(at)gmail(dot)com> wrote:

> From: Aldo Quezada <huincha(at)gmail(dot)com>
> Subject: [pgsql-es-ayuda] duda con query
> To: pgsql-es-ayuda(at)postgresql(dot)org
> Date: Thursday, July 9, 2009, 11:32 PM
> Hola lista, tengo una consulta y duda
> con respecto si se puede sacar con una query o tendre que
> hacer camino largo
>
> tengo 2 tabla
> [nominados]
> id
> id_nominado
> estado (0, 1 ,2)
>
> [usuarios]
> id
> nombre
>
>
> se que puedo sacar totales por estado independiente
> osea
>
> select count(n.id_nominado) nominado,  from nominados n
> inner join usuarios u on u.id= n.id_nominado
> where estado =0 // aqui depende del estado que necesito
>
> group by  n.id_nominado
>
> asi puedo sacar segun el estado o puedo sacar simplemente
> el total de nominaciones sin tomar en cuenta los estados
>
> ahora mi duda y que me quemo un poco la cabeza es si puedo
> sacar todos los datos en un solo query
>
>
> nombre - total_estado0 - total_estado1 - total_estado2 -
> total
>
>
> no se si me explico bien
>
> Saludos
>

No se si esto es lo que necesitas pero aqui te envio algo.

select nombre,sum(Total1),sum(Total2),sum(Total3)
from (
select id_nominado,nombre,
CASE WHEN estado=1 THEN 1 ELSE 0 END as Total1,
CASE WHEN estado=2 THEN 1 ELSE 0 END as Total2,
CASE WHEN estado=3 THEN 1 ELSE 0 END as Total3
from nominada, usuario
where nominada.id_nominado=usuario.id
) as a
group by nombre

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Aldo Quezada 2009-07-10 14:37:04 Re: duda con query
Previous Message Leonardo Castillo 2009-07-10 13:46:49 Re: Reemplazar texto en campo BYTEA