sql >> Database >  >> RDS >> Mysql

Hoe selecteer je maximaal 3 items per gebruiker in MySQL?

Het is vrij eenvoudig met een gecorreleerde subquery:

SELECT `img`.`id` , `img`.`userid`
FROM `img`
WHERE 3 > (
SELECT count( * )
FROM `img` AS `img1`
WHERE `img`.`userid` = `img1`.`userid`
AND `img`.`id` > `img1`.`id` )
ORDER BY `img`.`id` DESC
LIMIT 10 

De query gaat ervan uit dat grotere id betekent later toegevoegd

Gecorreleerde subquery's zijn een krachtig hulpmiddel! :-)



  1. Maak een back-up van een enkele tabel met de gegevens ervan uit een database in SQL Server 2008

  2. Tuning:een goede plek om te beginnen

  3. Lijst van alle tabellen in postgresql information_schema

  4. Wat is SQL Server?