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

Групиране на подобни редове един до друг в MySQL

Можете да направите това с помощта на хитър трик. Номерът е да преброите броя на описания до конкретен идентификатор, които са различни от описанието в този id . За стойности в поредица това число ще бъде същото.

В MySQL можете да направите това броене, като използвате корелирана подзаявка. Останалото е просто групиране по това поле, за да обедините стойностите:

select min(id) as id, description, count(*) as numCondensed
from (select t.*,
             (select count(*)
              from table t2
              where t2.id <= t.id and t2.description <> t.description
             ) as grp
      from table t
     ) t
group by description, grp;



  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 и MySqli в PHP

  2. Помощ за MySQL:Как да намерите всички поръчки от клиент до цена <=20 и status='unpaid'

  3. Как работи функцията REGEXP_INSTR() в MySQL

  4. Как да изчислим текущото общо в MySQL

  5. MySQL не може да добави ограничение за външен ключ