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

mysql group_concat с брой вътре?

Трябва да използвате GROUP BY два пъти, първо на (user_id, status) от следното, за да получите брои, след това на user_id от присъединена таблица за concat:

SELECT users.name, GROUP_CONCAT( CONCAT(f.status, ',', f.cnt) SEPARATOR '|' )
FROM users 
JOIN
( SELECT user_id, status, count(id) AS cnt
  FROM application_follows
  GROUP BY user_id, status ) f
ON f.user_id = users.id
GROUP BY users.id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на клауза WHERE за намиране на POI в обхват на разстояние от дължина и ширина

  2. Грешки в хибернация в наименувани заявки

  3. Как да покажа схемата на таблица в MySQL база данни?

  4. MySQL 'Поръчай по' - правилно сортиране на букви и цифри

  5. Подготовка на MySQL INSERT/UPDATE оператор със стойности по подразбиране