В MySql я понимаю, что вы можете получить более одной строки с помощью SELECT без таблицы (или DUAL).
Поэтому, чтобы получить несколько строк, вам нужно нужна реальная или временная таблица с как минимум необходимым количеством строк.
Однако, вам не нужно создавать временную таблицу , так как вы можете использовать ANY существующую таблицу, в которой есть как минимум необходимое количество строк. Итак, если у вас есть таблица с как минимум необходимым количеством строк, используйте:
SELECT @curRow := @curRow + 1 AS row_number
FROM sometable
JOIN (SELECT @curRow := 0) r
WHERE @curRow<100;
Просто замените «sometable» именем любой вашей таблицы, по крайней мере, с необходимым количеством строк.
PS: "r" - это таблица "псевдоним": я мог бы использовать "AS r". Любой подзапрос в предложении FROM или JOIN создает «производную таблицу», которая, как и во всех таблицах, должна иметь имя или псевдоним. (См. Руководство MySql: 13.2.9.8. Подзапросы в предложении FROM)