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

Počítejte záznamy v tabulce mysql jako různé sloupce v závislosti na různých hodnotách sloupce

Byli jste na správné cestě, ale změňte počet na SUM( IF( ))... něco jako

select
      sum( if( s.job_search_text = 'a', 1, 0 ) ) as 'A',
      sum( if( s.job_search_text = 'b', 1, 0 ) ) as 'B',
      sum( if( s.job_search_text = 'c', 1, 0 ) ) as 'C',
      sum( if( s.job_search_text = 'd', 1, 0 ) ) as 'D',
      sum( if( s.job_search_text = 'e', 1, 0 ) ) as 'E',
      sum( if( s.job_search_text IN ( 'a', 'b', 'c', 'd', 'e' ), 0, 1 ) ) as 'Other'
   from 
      subscriber s

Test "IN" pro druhého, pokud najde něco, co je již zaúčtováno, pak je to součet nulové hodnoty. Pokud NEMŮŽE najít jeden ze záznamů a-e, sečte pro vás JEDEN počet "Ostatní".



  1. Standardní řetězce formátu data/času Podporovány FORMAT() na serveru SQL Server

  2. Oprávnění odepřeno při pokusu o import souboru CSV z PGAdmin

  3. Vložte ckeditor html kód do databáze

  4. Zamykací stůl pro čtení a psaní