Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Mysql:tìm số hàng có cùng giá trị nối tiếp nhau

Ồ, tôi nghĩ rằng tôi đã tìm ra. Bạn quan tâm đến chuỗi giá trị liền kề. Cột đầu tiên là id tối đa, cột thứ hai là giá trị và cột thứ ba là độ dài.

Có, bạn có thể thực hiện việc này với các biến:

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. C # và MySQL .NET Connector - Bất kỳ cách nào để ngăn chặn các cuộc tấn công SQL Injection trong một lớp chung?

  2. Kết quả sắp xếp Laravel theo các giá trị cụ thể

  3. Xử lý độ trễ trong giao dịch MySQL

  4. Đòi lại dung lượng đĩa sau khi thả cơ sở dữ liệu trong mysql

  5. Doctrine2 với Symfony2 không nhận dạng ký tự db và đối chiếu