sql >> Database >  >> RDS >> PostgreSQL

postgresql - krijg telling op waardebereiken

select name, 
       count(case when value <= 5 then 1 end) as "0-5",
       count(case when value > 5 and value <= 10 then 1 end) as "5-10",
       count(case when value > 10 and value <= 15 then 1 end) as "10-15"
from the_table
group by name;

Met de aankomende versie 9.4 kan dit wat leesbaarder worden geschreven:

select name, 
       count(*) filter (where amount <= 5) as "0-5",
       count(*) filter (where value > 5 and value <= 10) as "5-10",
       count(*) filter (where value > 10 and value <= 15) as "10-15"
from the_table
group by name;



  1. Efficiënter om meer kolommen of meer rijen te hebben?

  2. Hoe kan ik een gebruiker toestemming geven voor alle nieuwe tabellen in Postgres?

  3. Kolomwaarde van vorige rij in postgre ophalen kan de vensterfunctie niet gebruiken in UPDATE

  4. PSQLException:de kolomnaam clazz_ is niet gevonden in deze ResultSet