Re: devide and summarize sql result (all) - Mailing list pgsql-general

From bricklen
Subject Re: devide and summarize sql result (all)
Date
Msg-id CAGrpgQ_B4kHZk4yfBQbG6q4Jn+-ksg9m0BTWpeV4FVqQ4sQ2bA@mail.gmail.com
Whole thread Raw
In response to devide and summarize sql result (all)  ("Janek Sendrowski" <janek12@web.de>)
Responses Re: devide and summarize sql result (all)  ("Janek Sendrowski" <janek12@web.de>)
List pgsql-general
On Thu, Aug 15, 2013 at 1:51 PM, Janek Sendrowski <janek12@web.de> wrote:
Hi,
 
My sql query results sth. like this:
 
user percentage
franz 78%
smith 98%
franz 81%
jason 79%
smith 89%
smith 85%
smith 99%
 
Now I'd like to summarize the percentages oder every user like this.
smith
2 matches 95-100%
2 matches 85-95%
0 mathes 75-85%
 
franz
0 mathes 95-100%
...

A CASE statement should work, if you are willing to hard-code the list of expressions.

SELECT  username,
        sum(case when avg between 76 and 85 then 1 else 0 end) as "76 to 85",
        sum(case when avg between 86 and 95 then 1 else 0 end) as "86 to 95",
        sum(case when avg > 95 then 1 else 0 end) as ">95"
FROM yourtable
GROUP BY username

pgsql-general by date:

Previous
From: Vik Fearing
Date:
Subject: Re: Escape string for LIKE op
Next
From: Robert James
Date:
Subject: Re: Escape string for LIKE op