sql >> Database teknologi >  >> RDS >> Mysql

MySQL vælg øverste rækker med samme tilstandsværdier

Dette er den rigtige løsning, tror jeg:du har brug for underforespørgslen for at vide, hvor meget post har 10. pladsen i din top ti. Derefter bruger du den ydre forespørgsel til at udtrække brugerne med næsten det postantal.

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. Sådan bruger du de roller, der er ændret i MySQL 8.0

  2. Wufoos databaseskema - Hvordan ville du designe det?

  3. Hvordan laver man en databaselytter med java?

  4. Funktion til at returnere dynamisk sæt af kolonner for en given tabel