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

mysql Пребройте множество поява на мултиплексирани записи

Опитайте тази заявка

SELECT Reason,COUNT(Reason) FROM
(
SELECT
  id,
  SUBSTRING_INDEX(SUBSTRING_INDEX(reasoncode, ',', n.digit+1), ',', -1) Reason
FROM
  table1
  INNER JOIN
  (SELECT 0 digit UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3) n
  ON LENGTH(REPLACE(reasoncode, ',' , '')) <= LENGTH(reasoncode)-n.digit
ORDER BY
  id,
  n.digit
) T

Group By Reason;

SQL FIDDLE

Изходът би бил:

REASON  OCCURANCES
0           3
1           3
2           2
3           1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да настроите пейджър по подразбиране за MySQL клиента?

  2. Проектиране на база данни за първи път:свръхинженеринг ли съм?

  3. LOAD DATA INFILE:Невалиден низ от символи ut8mb4

  4. Как да $_POST динамично присвоена стойност в PHP?

  5. Laravel 4 не може да изпълнява цели RAW заявки