Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Policz rekordy w tabeli mysql jako różne kolumny w zależności od różnych wartości kolumny

Byłeś na dobrej drodze, ale zmień licznik na SUMA( IF())... coś w stylu

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" dla drugiego, jeśli znajdzie coś już rozliczonego, to sumuje wartość zerową. Jeśli NIE MOŻE znaleźć jednego z wpisów a-e, sumuje JEDEN dla Ciebie "Inny".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zbiorczo wstawić w mySql i node.js za pomocą mysljs

  2. Tabela tymczasowa pulowania połączeń Netto MySQL

  3. Jak bezpiecznie połączyć się z bazą danych MySQL za pomocą SQLalchemy?

  4. Dodaj sortowanie stronicowania i wyszukiwanie za pomocą jquery datatable

  5. SQL LEFT-JOIN na 2 polach dla MySQL