sql >> Database >  >> RDS >> PostgreSQL

Geneste SELECT COUNT maken met alias in Postgres

U wilt voor elk teken een aparte rij maken. Een manier is om alle karakters te genereren en ze vervolgens te aggregeren. Hier is een benadering:

select chr(chars.c + ascii('A')) as c,
       sum(case when ascii(left(m.nome, 1)) = chars.c + ascii('A') then 1 else 0 end)
from generate_series(0, 25) as chars(c) cross join
     merchant m
group by c;

BEWERKEN:

Alan's suggestie is een betere vraag:

select chr(chars.c + ascii('A')) as c,
       count(m.nome)
from generate_series(0, 25) as chars(c) left join
     merchant m
     on ascii(left(m.nome, 1)) = chars.c + ascii('A')
group by c;


  1. PHP MySQL INSERT mislukt vanwege unieke beperking

  2. 1000000 tot 1M en 1000 tot 1K in orakelquery

  3. Hoe kan ik een tabel maken met orakel maar met kleine karakters?

  4. Foreign Key toevoegen mislukt in MySQL met foutcode 1005, nummer 150