Mysql
 sql >> база данни >  >> RDS >> Mysql

Групиране по LIKE на стойност на колона

Можете да използвате 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);

Някои бази данни ви позволяват да използвате псевдоним на колона в 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. пропускайте таблици, когато изпълнявате Doctrine convert-mapping

  2. получаване на грешка - SQLSTATE[21000]:Нарушение на кардиналността:1241 Операнд трябва да съдържа 1 колона(и)

  3. Как да проверя дали INSERT работи добре в съхранената функция?

  4. Как да задам character_set_database и collation_database на utf8 в my.ini?

  5. Операторът '<' е запазен. Грешка в PowerShell