sql >> Databáze >  >> RDS >> Mysql

SQL Jak vytvořit hodnotu pro nový sloupec na základě počtu existujícího sloupce podle skupin?

Myslím, že chcete pouze podmíněnou agregaci, nikoli dílčí dotazy:

select Max(Counting) as Total, student, stdType,
       sum(case when score = '3' then 1 else 0 end) as Score3,
       sum(case when score = '4' then 1 else 0 end) as Score4
from #tempBWMSHonors3
group by student, stdType;

Poznámka:Pokud je skóre číslo a ne řetězec, neměli byste pro konstantu používat jednoduché uvozovky.




  1. Jaké zdroje existují pro ladění výkonu databáze?

  2. Ukládání json, jsonb, hstore, xml, enum, ipaddr atd. se nezdaří, protože sloupec x je typu json, ale výraz má proměnlivý typ

  3. MariaDB POWER() Vysvětleno

  4. Jak provádět průběžné upgrady pro MySQL