Zde je ROW_NUMBER
může pomoct. Vyžaduje klauzuli o objednávce, ale to je v pořádku, protože existuje klauzule o objednávce (a je vyžadována k zaručení konkrétní objednávky).
SELECT t.id, t.key
FROM
(
SELECT id, key, ROW_NUMBER() OVER (ORDER BY key) AS rownum
FROM datatable
) AS t
WHERE t.rownum % 30 = 0 -- or % 40 etc
ORDER BY t.key