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

Hitung baris di mysql berdasarkan grup

Sebelum pengenalan ekspresi tabel umum di MySQL 8, metode pertama GL akan menjadi yang tercepat, tetapi berikut adalah beberapa ide lain (juga menggunakan teknologi lama), hanya untuk bersenang-senang...

1.

SELECT x.*
     , COUNT(*) rank 
  FROM my_table x 
  JOIN my_table y 
    ON y.a = x.a 
   AND y.b <= x.b 
 GROUP  
    BY x.a
     , x.b;

2.

SELECT x.* 
     , FIND_IN_SET(b,n) rank 
  FROM my_table x 
  JOIN 
     ( SELECT a 
            , GROUP_CONCAT(b ORDER BY b) n 
         FROM my_table 
        GROUP 
           BY a
     ) y 
    ON y.a = x.a;


  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 DELETE FROM dengan subquery sebagai syarat

  2. Bagaimana Mengembalikan Tabel MySQL Tunggal Menggunakan mysqldump?

  3. MySQL:batas waktu tunggu kunci terlampaui

  4. Pernyataan TABEL MySQL

  5. Apakah utas mysql_insert_id aman?