Для этого примера используйте подзапрос:
SELECT t.*
FROM (SELECT test.id, test.city, ROW_NUMBER() OVER () rownumber
FROM prod.test LEFT OUTER JOIN
prod.locations location
ON test.city = location.id
WHERE active = true
) t
WHERE rownumber BETWEEN 10000 AND 30000 ;
Однако вам, вероятно, следует использовать LIMIT
и OFFSET
.