Top N wartości dla każdej grupy w pojedyńczym zapytaniu
Thursday, May 21st, 2009 | Uncategorized
w pojedyńczym zapytaniu, wow
http://rickosborne.org/blog/index.php/2008/01/07/sql-getting-top-n-rows-for-a-grouped-query/
SELECT c.*, d.ranknum
FROM girl AS c
INNER JOIN (
SELECT a.id, COUNT(*) AS ranknum
FROM girl AS a
INNER JOIN girl AS b ON (a.hair = b.hair) AND (a.score <= b.score)
GROUP BY a.id
HAVING COUNT(*) <= 3
) AS d ON (c.id = d.id)
ORDER BY c.hair, d.ranknum
No comments yet.