Dla tych, którzy nie mogą używać MySQL 5.5.6+ i nie chcą pisać procedury składowanej, istnieje inny wariant. Możemy dodać klauzulę where do podselekcji za pomocą ROWNUM.
SET @limit = 10;
SELECT * FROM (
SELECT instances.*,
@rownum := @rownum + 1 AS rank
FROM instances,
(SELECT @rownum := 0) r
) d WHERE rank < @limit;