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

MySQL memilih baris teratas dengan nilai kondisi yang sama

Ini adalah solusi yang tepat, saya pikir:Anda memerlukan subquery untuk mengetahui berapa banyak pos yang menempati posisi 10 dalam sepuluh besar Anda. Kemudian, Anda menggunakan kueri luar untuk mengekstrak pengguna dengan jumlah pos hampir sebanyak itu.

SELECT u.username, COUNT(p.id) AS count 
FROM Posts p
JOIN Users u ON u.id = p.author_id
GROUP BY p.author_id 
HAVING COUNT(p.id) >= 
(
    SELECT COUNT(p.id) AS count 
    FROM Posts p
    JOIN Users u ON u.id = p.author_id
    GROUP BY p.author_id 
    ORDER BY count DESC
    LIMIT 9, 1
)
ORDER BY count DESC


  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.ConnectorNET.Data vs MySql.Data

  2. MySQL:FULL OUTER JOIN - Bagaimana cara menggabungkan satu kolom?

  3. 10 Pertanyaan Wawancara Database MySQL untuk Pemula dan Menengah

  4. Kesalahan Migrasi Laravel:Kesalahan sintaks atau pelanggaran akses:1071 Kunci yang ditentukan terlalu panjang; panjang kunci maksimal adalah 767 byte

  5. Praktik terbaik pengoptimalan database MySQL