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

Grupuj według LIKE wartości kolumny

Możesz użyć case :

SELECT (CASE WHEN plan_type LIKE 'silver%' THEN 'silver'
             WHEN plan_type LIKE 'gold%' THEN 'gold'
             WHEN plan_type LIKE 'platinum%' THEN 'platinum'
        END) as plan_grp, COUNT(*)
FROM subscriptions
GROUP by (CASE WHEN plan_type LIKE 'silver%' THEN 'silver'
               WHEN plan_type LIKE 'gold%' THEN 'gold'
               WHEN plan_type LIKE 'platinum%' THEN 'platinum'
          END);

Niektóre bazy danych pozwalają na użycie aliasu kolumny w GROUP BY .



  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 wybrać wiersz, w którym jedna z kilku kolumn ma określoną wartość?

  2. Wywołanie niezdefiniowanej metody Illuminate\\Database\\Schema\\Blueprint::increments()

  3. Jak działa wyszukiwanie pełnotekstowe MySQL?

  4. Tabela błędów Mysql 1050 już istnieje, podczas gdy w rzeczywistości tak nie jest

  5. Duplikuj, kopiuj lub twórz kopie zapasowe tabel w MySQL, MariaDB, Oracle, PostgreSQL, DB2 i SQLite za pomocą funkcji Utwórz tabelę jako SQL