Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mysql:temukan jumlah baris yang memiliki nilai yang sama satu demi satu

Oh, saya pikir saya sudah mengetahuinya. Anda peduli dengan urutan nilai yang berdekatan. Kolom pertama adalah id maksimum, yang kedua adalah nilainya, dan yang ketiga adalah panjangnya.

Ya, Anda dapat melakukannya dengan variabel:

select max(id), val, count(*)
from (select t.*,
             (@grp := if(@v = val, @grp,
                         if(@v := val, @grp + 1, @grp + 1)
                        )
             ) as grp
      from yourtable t cross join
           (select @v := -1, @grp := -1) params
      order by id
     ) t
group by grp, val
order by max(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. Gabung - bidang di tabel 2 menimpa yang ada di tabel 1

  2. permintaan tunggal untuk mencetak semua baris yang jumlahnya lebih besar dari 10

  3. Memeriksa apakah resep mengandung bahan - MYSQL

  4. Mengapa transaction.wasCommitted() mengembalikan false?

  5. Pemicu MySQL untuk memperbarui tabel SQL Server